[go: up one dir, main page]

KR20020001502A - Stereo disparity decision apparatus and method - Google Patents

Stereo disparity decision apparatus and method Download PDF

Info

Publication number
KR20020001502A
KR20020001502A KR1020010022680A KR20010022680A KR20020001502A KR 20020001502 A KR20020001502 A KR 20020001502A KR 1020010022680 A KR1020010022680 A KR 1020010022680A KR 20010022680 A KR20010022680 A KR 20010022680A KR 20020001502 A KR20020001502 A KR 20020001502A
Authority
KR
South Korea
Prior art keywords
wmc
search
value
window
pixel
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.)
Abandoned
Application number
KR1020010022680A
Other languages
Korean (ko)
Inventor
오승호
Original Assignee
오승호
칩스브레인(주)
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 오승호, 칩스브레인(주) filed Critical 오승호
Priority to US09/886,294 priority Critical patent/US20020012459A1/en
Publication of KR20020001502A publication Critical patent/KR20020001502A/en
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Measurement Of Optical Distance (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

PURPOSE: A stereo displacement determining device and a method using sequential parallel processing are provided to determine stereo displacement by repeatedly calculating the similarity between a reference window of a reference image and a detection window of a detection image having the same shape as that of the reference window using sequential parallel sharing structure. CONSTITUTION: First, the similarity between a reference window and a detection window which is positioned within a predetermined detection distance from the reference window and has the same shape as that of the reference window is repeatedly calculated using matching pixel counts representing similar bright pixel counts of detection windows including pixels corresponding to the reference window. Then, the stereo displacement between the reference window and the detection window, which similarity is maximized, is determined using the matching pixel counts to the reference pixel, thereby determining the stereo displacement between detection images.

Description

순차병렬처리를 이용한 스테레오 변위 결정장치 및 방법 { Stereo disparity decision apparatus and method }Stereo disparity decision apparatus and method using sequential parallel processing

본 발명은 디지털 영상 처리에 관한 것으로, 특히 서로 다른 영상 내의 2개의 화소에 대해 순차 병렬구조를 이용한 스테레오 변위 결정장치 및 방법에 관한 것이다.The present invention relates to digital image processing, and more particularly, to an apparatus and method for determining stereo displacement using a sequential parallel structure for two pixels in different images.

스테레오 변위 추정은 3차원 또는 스테레오 비젼 분야에서 활발한 연구가 진행되고 있는 영역이다. 스테레오 변위는 기준 영상 내의 하나의 화소와 탐색 영상 내의 다른 하나의 화소 사이의 오프셋 또는 변위를 의미하며, 각각의 화소는 물리적 공간내의 동일한 점에 대응된다. 기준 영상과 탐색 영상은 각각 왼쪽 눈과 오른쪽 눈으로 본 영상이다. 기준 영상 내의 주어진 화소에 정합되는 탐색 화소내의 화소를 결정하기 위하여, 두 영상내의 화소에 대한 좌표가 먼저 설정되어야 한다. 그리고 나서, 기준 영상내의 주어진 화소(즉, 기준 화소)를 중심으로 하는 일정한 크기의 창 내의 화소들과, 대응점이라고 간주되어지는 탐색 영상의 화소들을 중심으로 하는 같은 크기의 창 내의 화소들 간의 유사도를 계산한다. 탐색 영상 내에서 최대치의 유사도를 갖는 화소를 기준 화소에 정합되는 화소로 본다. 기준 영상의 매 화소에 대해 탐색 범위 내의 모든 후보 대응 화소에 대해 유사도를 구하여기준 영상에 대한 변위 지도를 작성한다. 이때, 후보 대응 화소를 "에피폴라 구속 조건"을 적용하여 기준 화소와 동일 수평선상의 화소로 제한함으로써, 변위 지도를 훨씬 간단히 작성할 수 있도록 한다.Stereo displacement estimation is an area where active research is being conducted in the field of three-dimensional or stereo vision. Stereo displacement refers to an offset or displacement between one pixel in a reference image and another pixel in a searched image, and each pixel corresponds to the same point in physical space. The reference image and the search image are images viewed by the left eye and the right eye, respectively. In order to determine a pixel in the search pixel that matches a given pixel in the reference image, the coordinates for the pixels in the two images must first be set. Then, the similarity between the pixels in the window of constant size centered on a given pixel (i.e., the reference pixel) in the reference image and the pixels in the window of the same size centered in the pixels of the search image considered to be the corresponding points. Calculate A pixel having the maximum similarity in the searched image is regarded as a pixel matched with the reference pixel. For each pixel of the reference image, similarity is obtained for all candidate corresponding pixels within the search range, and a displacement map of the reference image is generated. At this time, the candidate correspondence pixel is limited to a pixel on the same horizontal line as the reference pixel by applying the "epipolar constraint condition", thereby making the displacement map much simpler.

도 1은 에피폴라 구속조건에 의한 정합을 도시하는 도면이다. 기준 영상에서 가운데 표시된 화소의 대응점을 탐색 영상에서 찾기 위해, 기준 화소를 중심으로 한 창과 탐색 영상내의 후보 대응 화소를 중심으로 한 창과의 유사도를 탐색 영상내의 창을 탐색 영역 내에서 수평선을 따라서 이동시키면서 계산한다. 탐색 영상 내에서 최대치의 유사도를 갖는 후보 탐색 화소를 기준 화소에 정합되는 화소로 본다. 정합되는 화소와 기준 화소간의 변위가 기준 화소에 대한 스테레오 변위가 된다.1 is a diagram illustrating registration by epipolar constraint. In order to find the corresponding point of the center displayed pixel in the reference image in the search image, the similarity between the window centered on the reference pixel and the window centered on the candidate corresponding pixel in the search image is moved while moving the window in the search image along the horizontal line in the search area. Calculate A candidate search pixel having a maximum similarity in the search image is regarded as a pixel matched with the reference pixel. The displacement between the matched pixel and the reference pixel becomes a stereo displacement with respect to the reference pixel.

여기서, 에피폴라 구속조건(Epipolar Constraint)이란, 영상 처리 시간의 단축 등의 이점을 얻기 위해 기준 좌표계에 대한 카메라 자표계의 원점이 같은 거리에 존재하고 높이에 해당하는 좌표가 같은 상태에서 좌·우 영상을 얻게 되는데 이러한 조건을 에피폴라 구속 조건이라 한다. 다시 설명하면, 좌·우(스테레오) 영상을 얻기 위해 카메라의 중심축이 평행하고 영상의 높이, 즉 y 좌표를 같게 하는 것을 말한다. 이 에피폴라 구속조건은 참고문헌(U.R. Dhond and J.K. Aggarwal, "Structure from Stereo-A Review", IEEE Trans. Syst. Man Cybern., vol. 19, no. 6, pp.1489-1510, Nov./Dec. 1989.)에 상세하게 기술되어 있다.Here, Epipolar Constraint means that the origin of the camera's magnetic field relative to the reference coordinate system is at the same distance and the coordinates corresponding to the height are the same in order to obtain advantages such as shortening the image processing time. You get an image, which is called an epipolar constraint. In other words, in order to obtain a left and right (stereo) image, the center axis of the camera is parallel and the height of the image, that is, the y coordinate is the same. This epipolar constraint is described in UR Dhond and JK Aggarwal, "Structure from Stereo-A Review", IEEE Trans. Syst. Man Cybern., Vol. 19, no. 6, pp. 1489-1510, Nov./ Dec. 1989.).

정합되는 화소를 결정하기 위한 유사도를 계산하는 방법에는 화소간의 밝기 차를 보는 SSD(Sum of Squared Differences) 및 SAD(Sum of Absolute Differences)방법과, 상관 관계를 보는 NCC(Normalized Cross Correlation) 방법 등이 있다. SSD, SAD 그리고 NCC 등의 유사도 측정방법은 한 탐색 화소가 변위 지도에 미치는 영향이 주어진 탐색 화소의 밝기값에 따라 다르다. 따라서, 도 2에 도시된 바와 같이 화소간의 밝기 변화가 큰 영역의 변위 경계선이 밝기 변화가 작은 영역으로 연장되는 "경계의 지나침(boundary overreach)"이라는 현상이 생기고, 이 때문에 물체의 경계부분에서 잘못된 변위값을 발생시키는 문제점이 있다.Methods of calculating similarity for determining matching pixels include Sum of Squared Differences (SSD) and Sum of Absolute Differences (SAD) methods for viewing brightness differences between pixels, and Normalized Cross Correlation (NCC) methods for viewing correlations. have. Similarity measurement methods, such as SSD, SAD, and NCC, depend on the brightness value of a search pixel given the effect of one search pixel on the displacement map. Therefore, as shown in FIG. 2, a phenomenon called "boundary overreach" occurs in which the displacement boundary line of the region where the brightness change between the pixels is large extends to the region where the brightness change is small, and thus is incorrect at the boundary of the object. There is a problem of generating a displacement value.

상기한 문제점을 해결하기 위해 안출된 본 발명의 목적은, 탐색 영역의 화소 밝기값을 직접 이용하지 않고, 정합창 내에서 밝기가 비슷한 정합화소의 개수(Window Matching Count : WMC)를 누적하고 순차병렬처리하여 유사도를 측정함으로써, 스테레오 변위 추정에서 경계의 지나침 현상이 발생하지 않는 순차병렬처리를 이용한 스테레오 변위 결정장치 및 방법을 제공하기 위한 것이다.An object of the present invention devised to solve the above problems is to accumulate the number of matching pixels (Window Matching Count: WMC) having similar brightness in the matching window without using the pixel brightness value of the search area directly, and to sequentially By measuring the degree of similarity by processing, to provide a stereo displacement determination apparatus and method using a sequential parallel processing that does not occur the boundary of the boundary in the stereo displacement estimation.

도 1은 에피폴라 구속 조건에 구속되는 정합을 도시하는 도면,1 illustrates a registration constrained to an epipolar constraint;

도 2는 종래 기술에 따른 SAD 방법과 본 발명에 따른 WMC 방법의 성능 비교를 도시한 도면,2 is a diagram illustrating a performance comparison between the SAD method according to the prior art and the WMC method according to the present invention;

도 3은 WMC 유사도 측정 방법에 내재된 중복 연산을 도시하는 도면,3 is a diagram illustrating a redundant operation inherent in the WMC similarity measuring method;

도 4는 중복 계산이 제거된 WMC 유사도 측정방법을 설명하기 위하여 도시한 개략도,4 is a schematic diagram illustrating a method of measuring WMC similarity with duplicate calculations removed;

도 5는 본 발명의 한 실시예에 따른 순차병렬처리를 이용한 스테레오 변위 결정장치의 구성 블록도,5 is a block diagram illustrating a stereo displacement determining apparatus using sequential parallel processing according to an embodiment of the present invention;

도 6은 본 발명의 한 실시예에 따른 순차병렬처리를 이용한 스테레오 변위 결정방법의 동작 흐름도,6 is an operation flowchart of a stereo displacement determination method using sequential parallel processing according to an embodiment of the present invention;

도 7은 도 5에 도시된 스트립 연산기의 내부 구조를 나타내는 도면,7 is a view showing the internal structure of the strip calculator shown in FIG.

도 8a 내지 도 8b는 도 7에 도시된 S-유니트의 내부 구조를 나타내는 도면,8a to 8b are views showing the internal structure of the S-unit shown in FIG.

도 9a 내지 도 9b는 우 영상이 기준영상이고 좌 영상이 탐색영상이며, Wx = Wy = 11, Sr = 63, d = 0 ∼ 63, wx = wy = 5 인 경우를 예로 들어 스트립 연산기의 동작 상태를 설명하기 위하여 도시한 도면,9A to 9B illustrate an operation state of a strip operator, for example, when a right image is a reference image, a left image is a search image, and Wx = Wy = 11, Sr = 63, d = 0 to 63, and wx = wy = 5 To illustrate the drawings,

도 10은 도 5에 도시된 S-버퍼의 내부 구조를 나타내는 도면,10 is a view showing the internal structure of the S-buffer shown in FIG.

도 11은 도 10에 도시된 S-레지스터의 내부 구조를 나타내는 도면,11 is a view illustrating an internal structure of an S-register shown in FIG. 10;

도 12는 S-버퍼의 동작 상태를 설명하기 위하여 도시한 도면,12 is a view for explaining the operating state of the S-buffer,

도 13은 S-버퍼의 멀티플렉스의 동작 상태를 설명하기 위하여 도시한 도면,13 is a view for explaining the operating state of the multiplex of the S-buffer,

도 14는 도 5에 도시된 WMC-유니트의 내부 구조를 나타내는 도면,14 is a view showing the internal structure of the WMC-unit shown in FIG.

도 15는 도 5에 도시된 WMC-버퍼의 내부 구조를 나타내는 도면,15 is a view showing the internal structure of the WMC-buffer shown in FIG.

도 16은 도 5에 도시된 WPC-갱신부의 내부 구조를 나타내는 도면,16 is a view showing an internal structure of the WPC-update unit shown in FIG. 5;

도 17은 도 5에 도시된 Max_WMC 선택부의 내부 구조를 나타내는 도면,17 is a view showing an internal structure of the Max_WMC selector shown in FIG. 5;

도 18은 도 17에 도시된 병렬 최대값 선택기의 내부 구조를 나타내는 도면,18 is a view showing an internal structure of the parallel maximum selector shown in FIG. 17;

도 19는 도 18에 도시된 비교 선택기의 내부 구조를 나타내는 도면,19 is a view showing an internal structure of the comparison selector shown in FIG. 18;

도 20은 도 18에 도시된 Comp 유니트의 내부 구조를 나타내는 도면이다.FIG. 20 is a diagram illustrating an internal structure of a Comp unit shown in FIG. 18.

※ 도면의 주요 부분에 대한 부호의 설명 ※※ Explanation of code about main part of drawing ※

100 : S-버퍼100: S-buffer

200 : WMC-프로세서200: WMC-processor

210 : 스트립 연산기210: strip calculator

220 : WMC-유니트220: WMC-Unit

230 : WMC-버퍼230: WMC-buffer

240 : Max_WMC 선택부240: Max_WMC selection unit

250 : 제어 유니트250 control unit

260 : WMC 갱신부260: WMC update unit

상기한 목적을 달성하기 위한 본 발명에 따른 순차병렬처리를 이용한 스테레오 변위 결정장치는 기준영상의 임의의 한 기준화소를 중심으로 하는 일정한 크기의 기준창과, 상기 기준화소에 대하여 에피폴라 구속조건을 만족하는 탐색영상의 다른 한 점을 중심으로 하는 상기 기준창과 동일한 크기를 갖는 탐색창 각각의 전체 화소들에 대하여 서로 대응하는 위치에 있는 기준창의 화소와 탐색창의 화소간의 밝기값의 차이가 임계값 이하인 화소들의 수를 카운트하여 유사도를 측정하고 스테레오 변위를 결정한다.In order to achieve the above object, a stereo displacement determining apparatus using a sequential parallel processing according to the present invention satisfies an epipolar constraint for a reference window having a constant size centering on one reference pixel of a reference image and the reference pixel. A pixel whose difference in brightness between pixels of the reference window and pixels of the search window at a position corresponding to each other for all the pixels of the search window having the same size as the reference window centered on another point of the search image is equal to or less than a threshold value Count the number of them to measure similarity and determine stereo displacement.

이러한 스테레오 변위 결정장치는, 상기 기준영상과 탐색영상을 입력받아 상기 기준영상의 기준 수직열과 탐색영상의 탐색범위 내의 모든 탐색 수직열들과의 S값들을 병렬로 계산하는 스트립 연산기와;The stereo displacement determining apparatus includes: a strip calculator which receives the reference image and the search image and calculates S values of the reference vertical column of the reference image and all search vertical columns in the search range of the search image in parallel;

상기 스트립 연산기에서 병렬로 계산된 S값들을 입력받아 저장하는 S버퍼와;An S buffer for receiving and storing S values calculated in parallel in the strip calculator;

상기 S버퍼로부터 상기 기준 수직열과 탐색 수직열들과의 S값들을 입력받아 상기 기준영상의 상기 기준화소를 중심으로 하는 기준창과 탐색영상의 탐색범위 내의 모든 탐색창과의 WMC값들을 계산하는 WMC 유니트와;A WMC unit which receives S values of the reference vertical column and the search vertical columns from the S buffer and calculates WMC values of a reference window centered on the reference pixel of the reference image and all search windows within the search range of the search image; ;

상기 WMC 유니트에서 구해진 기준창과 모든 탐색창과의 WMC값들 중에서 가장 큰 값을 최대 WMC값으로 출력하고, 그때의 기준화소와 탐색창의 중심화소와의 위치 차를 스테레오 변위로 설정하는 Max-WMC 선택기를 포함한 것을 특징으로 한다.The Max-WMC selector outputs the largest WMC value among the WMC values of the reference window and all the search windows obtained from the WMC unit, and sets the positional difference between the reference pixel and the center pixel of the search window as a stereo displacement. It is characterized by.

또한, 본 발명에 따른 순차병렬처리를 이용한 스테레오 변위 결정방법은 기준영상의 임의의 한 기준화소를 중심으로 하는 일정한 크기의 기준창과, 상기 기준화소에 대하여 에피폴라 구속조건을 만족하는 탐색영상의 다른 한 점을 중심으로 하는 상기 기준창과 동일한 크기를 갖는 탐색창 각각의 전체 화소들에 대하여 서로 대응하는 위치에 있는 기준창의 화소와 탐색창의 화소간의 밝기값의 차이가 임계값 이하인 화소들의 수를 카운트하여 유사도를 측정하고 스테레오 변위를 결정한다.In addition, the stereo displacement determination method using the sequential parallel processing according to the present invention is a reference window of a constant size centered on any one reference pixel of the reference image, and the other of the search image satisfying the epipolar constraint with respect to the reference pixel By counting the number of pixels whose difference in brightness between pixels of the reference window and pixels of the search window at a position corresponding to each other for all the pixels of the search window having the same size as the reference window centered on a point Measure similarity and determine stereo displacement.

이러한 스테레오 변위 결정방법은, 상기 기준영상과 탐색영상을 입력받아 상기 기준영상의 기준 수직열과 탐색영상의 탐색범위 내의 모든 탐색 수직열들과의 S값들을 병렬로 계산하는 스트립 연산단계와;The stereo displacement determining method includes: a strip calculating step of receiving the reference image and the search image and calculating S values of the reference vertical column of the reference image and all search vertical columns in the search range of the search image in parallel;

상기 스트립 연산단계에서 병렬로 계산된 S값들을 입력받아 상기 기준영상의 상기 기준화소를 중심으로 하는 기준창과 탐색영상의 탐색범위 내의 모든 탐색창과의 WMC값들을 계산하는 WMC 계산단계와;A WMC calculating step of receiving W values calculated in parallel in the strip calculating step and calculating WMC values of a reference window centered on the reference pixel of the reference image and all search windows within a search range of the search image;

상기 기준창과 모든 탐색창과의 WMC값들 중에서 가장 큰 값을 최대 WMC값으로 출력하고, 그때의 기준화소와 탐색창의 중심화소와의 위치 차를 스테레오 변위로 설정하는 Max-WMC 출력단계를 포함한 것을 특징으로 한다.And a Max-WMC output step of outputting the largest WMC value among the WMC values of the reference window and all the search windows as the maximum WMC value, and setting the positional difference between the reference pixel and the center pixel of the search window as stereo displacement. do.

이하에서는 본 발명의 한 실시예에 따른 "순차병렬처리를 이용한 스테레오 변위 결정장치 및 방법"을 첨부된 도면을 참조하여 설명하면 다음과 같다.Hereinafter, an apparatus and method for determining stereo displacement using sequential parallel processing according to an embodiment of the present invention will be described with reference to the accompanying drawings.

본 발명에서, WMC(Window Matching Count)는 기준영상 내의 기준창과 탐색영상 내의 복수 개의 탐색창 각각에 대한 유사도 측정에 이용된다. 여기서는 한 화소가 유사도에 미치는 영향을 밝기값에 관계없이 동일하게 함으로써, 영상의 경계 부분에서도 정확한 결과를 얻을 수 있다. WMC는 하나의 영상 내의 창 화소(상기 화소에 대응되는 다른 영상내의 화소가 비슷한 밝기값을 갖는 화소)의 개수로부터 계산한다. WMC는 하나의 영상내의 창의 화소-상기 화소에 대응되는 다른 영상내의 화소가 비슷한 밝기 값을 갖는 화소-의 개수로부터 계산한다.In the present invention, the window matching count (WMC) is used to measure the similarity of each of the reference window in the reference image and each of the plurality of search windows in the search image. In this case, the effect of one pixel on the similarity is the same regardless of the brightness value, so that accurate results can be obtained even at the boundary of the image. The WMC calculates from the number of window pixels in one image (pixels in which another pixel corresponding to the pixel has a similar brightness value). The WMC calculates from the number of pixels of a window in one image, that is, pixels in other images corresponding to the pixels have similar brightness values.

기준 창 및 탐색 창이 에피폴라 구속조건을 만족하는 경우, 기준 영상 내의 (x,y)에 위치한 화소 R(x,y)을 중심으로 하는 기준 창 및 탐색 영상 내의 (x+d,y)에 위치한 화소 L(x+d,y)을 중심으로 하는 탐색 창 사이의 WMC(x,y,d) 값은 아래 수학식 1과 같이 나타낼 수 있다.When the reference window and the search window satisfy the epipolar constraint, the reference window centered on the pixel R (x, y) located at (x, y) in the reference image and (x + d, y) in the search image The WMC (x, y, d) value between the search windows centering on the pixel L (x + d, y) may be expressed by Equation 1 below.

여기서,이고, YR(x,y) 및 YL(x+d,y)는 각각 화소 R(x,y) 및 화소 L(x+d,y)의 밝기값을 나타내며, W는 기준 영상의 R(x,y) 또는 탐색 영상의 L(x+d,y)을 중심으로 하는 화소 집합인 크기(Wx×Wy)의 화소영역인 정합창을 나타낸다. 또한, Th는 미리 정의된 문턱 값이다. 즉, 위의 수학식 1은, P(x,y,d)가 좌, 우 영상에서 각각의 위치 R(x,y), L(x+d,y)에 대해 화소 밝기가 비슷하면 1, 비슷하지 않으면 0의 값을 갖는다는 것을 의미한다. 우 영상 R(x,y) 위치의 화소에 대한 변위값은 모든 탐색범위 (d = 0 ~ Sr)에 대해 WMC(x,y,d)를 구한 후 이 값이 최대가 되는 d 값이 된다.here, Where Y R (x, y) and Y L (x + d, y) represent the brightness values of the pixels R (x, y) and L (x + d, y), respectively, and W is the R of the reference image. or (x, y) or a matching area that is a pixel area of size (Wx × Wy), which is a set of pixels centered on L (x + d, y) of the searched image. Th is also a predefined threshold. That is, in the above equation 1, when P (x, y, d) has similar pixel brightnesses for the respective positions R (x, y) and L (x + d, y) in the left and right images, 1, If not similar, it means that it has a value of zero. The displacement value for the pixel at the right image R (x, y) position is the d value at which this value becomes the maximum after obtaining WMC (x, y, d) for all the search ranges (d = 0 to Sr).

도 3은 영역기반의 WMC 유사도 측정방법에 내재된 중복 연산을 설명하기 위해 도시한 도면이다. 에피폴라 구속 조건이 만족되는 경우, 기준 영상의 모든 화소에 대해 WMC 값을 결정하기 위한 계산량은 {(Ix×Iy)×(Wx×Wy)×Sr}에 비례하는 방대한 양이다. 여기서, (Ix×Iy)는 영상의 크기, (Wx×Wy)는 창의 크기, Sr은 탐색 범위를 각각 나타낸다. 이처럼 많은 계산량이 필요한 이유는 영역기반 WMC 방법에 내재되어 있는 중복 계산에서 기인한다. 이를 도면으로 나타내면 도 3과 같다. 즉, 도 3에 도시된 바와 같이, 두 점 R(x,y)과 L(x+d,y) 사이의 WMC 값이 결정되었다면 R(x+1,y)과 L(x+1+d,y) 사이의 WMC 값을 결정할 때는 2개의 수평으로 변위된 창에서 겹치는 부분(해칭된 부분)에 대응되는 계산은 중복되는 계산일 것이다. 이러한 많은 양의 중복 계산은 연산 결과를 저장하는 버퍼를 사용하면 제거할 수 있으며, 전체 계산량을 창의 크기에 영향을 받지 않는 (Ix×Iy)×Sr에 비례하는 양으로 줄일 수 있다.3 is a diagram illustrating a redundant operation inherent in the region-based WMC similarity measuring method. When the epipolar constraint is satisfied, the amount of calculation for determining the WMC value for all the pixels of the reference image is a massive amount proportional to {(Ix × Iy) × (Wx × Wy) × Sr}. Here, (Ix × Iy) represents the size of the image, (Wx × Wy) represents the size of the window, and Sr represents a search range. The reason for this large amount of computation is due to the redundant computation inherent in the domain-based WMC method. This is shown in FIG. 3. That is, as shown in Figure 3, if the WMC value between the two points R (x, y) and L (x + d, y) is determined, R (x + 1, y) and L (x + 1 + d In determining the WMC value between, y), the calculations corresponding to the overlapping parts (hatched parts) in the two horizontally displaced windows will be redundant calculations. This large amount of redundancy can be eliminated by using a buffer to store the result of the operation, and the overall amount of computation can be reduced to an amount proportional to (Ix × Iy) × Sr, which is not affected by the size of the window.

도 4는 중복 계산을 제거한 WMC 값 계산방법을 도시하는 도면으로서, 기준 영상의 화소만이 도시되어 있다. 일반적으로, WMC(x,y,d)는 하기의 수학식 2에 의해 구할 수 있다.4 is a diagram illustrating a WMC value calculation method in which duplicate calculations are eliminated, and only pixels of a reference image are shown. In general, WMC (x, y, d) can be obtained by Equation 2 below.

여기서, S(·)는 아래의 수학식 5와 같이 구할 수 있으며, 수학식 2에서 wx 보다 큰 x에 대해서는, WMC(x,y,d)는 전 단계에서 계산된 WMC(x-1,y,d)로부터 하기의 수학식 3과 같이 구할 수 있다. 이 수학식 3을 도면으로 표현하면 도 4와 같다.Here, S (·) can be obtained as shown in Equation 5 below, and for x larger than wx in Equation 2, WMC (x, y, d) is WMC (x-1, y calculated in the previous step). It can be calculated | required from (d) as follows. This equation (3) is shown in FIG. 4.

WMC(x,y,d)=WMC(x-1,y,d)+S(x+wx,y,d)-S(x-1-wx,y,d)WMC (x, y, d) = WMC (x-1, y, d) + S (x + wx, y, d) -S (x-1-wx, y, d)

즉, WMC(x,y,d)는 WMC(x-1,y,d)에서 앞 수직열의 S(x-1-wx,y,d)를 빼고, 뒤 수직열의 S(x+wx,y,d)를 더함으로써, 구할 수 있다. 위의 수학식 2와 수학식 3에서 wx 및 wy는 창의 중앙에서 각각 수평 및 수직 방향으로 경계까지의 거리를 나타내며, 이를 식으로 표현하면 아래의 수학식 4와 같다.That is, WMC (x, y, d) subtracts S (x-1-wx, y, d) of the front vertical column from WMC (x-1, y, d), and S (x + wx, y) of the rear vertical column. by adding d). In Equation 2 and Equation 3 above, wx and wy represent distances from the center of the window to the boundary in the horizontal and vertical directions, respectively, and are expressed as Equation 4 below.

위의 S(x,y,d)는 화소(x,y)를 중심으로 수직열을 이루는 각 화소에 대해 P(x,y+i,d)(여기서, i는 -wy부터 wy)값을 더하여 계산하며, 이를 수식으로 표현하면 수학식 5와 같다.The above S (x, y, d) is a value of P (x, y + i, d) (where i is from -wy to wy) for each pixel forming a vertical column centered on the pixel (x, y). Addition is calculated, and this is expressed as equation (5).

여기서, P(x,y+i,d)는 수학식 1에서와 같이 R(x,y+i) 화소의 밝기값과 L(x+d,y+i) 화소의 밝기값이 비슷하면 1, 그렇지 않으면 0의 값을 갖는다. wy보다 큰 y에 대해서는 위의 과정을 반복 수행함으로써, (Iy-wy)만큼 반복된 과정을 수행하게 된다.Here, P (x, y + i, d) is 1 if the brightness value of the R (x, y + i) pixel is similar to the brightness value of the L (x + d, y + i) pixel as shown in Equation 1. Otherwise, it has a value of zero. By repeating the above process for y greater than wy, the process repeated by (Iy-wy) is performed.

기준 영상 및 탐색 영상에 대해 스테레오 변위를 추정하려면 우선, 수학식 5에 따라 R(wx,wy)과 L(wx+d,wy)을 중심으로 하는 정합창(R(x,y), L(x+d,y), x는 0내지 Wx, y는 0 내지 Wy, d는 0 내지 Sr)을 이루는 수직열간의 유사도를 나타내는 S(x,wy,d)를 먼저 계산한다. 즉, 각각의 x값에 대해서 탐색 범위 (Sr+1) 만큼의 수직열의 S값(S(x,wy,0), S(x,wy,1), S(x,wy,2), ..., S(x,wy,Sr))을 구한다. 구한 S값들은 Wx×(Sr+1) 크기의 S 버퍼에 저장한다. S 버퍼의 각 크기는 수직열간의 유사도값을 나타내며 이 값은의 round up된 정수이다.In order to estimate the stereo displacements for the reference image and the search image, first, a registration window (R (x, y), L () centered on R (wx, wy) and L (wx + d, wy) according to equation (5) x + d, y), where x is 0 to Wx, y is 0 to Wy, and d is 0 to Sr, and S (x, wy, d) representing the similarity between vertical columns is first calculated. That is, for each x value, the S value (S (x, wy, 0), S (x, wy, 1), S (x, wy, 2),.) Of the vertical column by the search range (Sr + 1). .., S (x, wy, Sr)) The obtained S values are stored in an S buffer of size Wx × (Sr + 1). Each size of the S buffer represents a similarity value between vertical columns. Is a rounded up integer.

수학식 2에서, WMC(x,y,d)는 기준 영상의 x 번째 열의 화소인 R(x,y)과 탐색 영상의 화소 좌표 L(x+d,y)을 중심으로 하는 정합창간의 유사도를 나타내며, 수직열간의 정합 S(x+i,y,d)를 i=-wx부터 wx까지 누적하여 WMC 버퍼에 저장하고, 이를 모두 가산함으로써 구할 수 있다. wx보다 큰 x 값에 대하여, WMC(x,y,d)는 수학식 3과 도 4에 나타낸 것과 같이 WMC 버퍼에 저장되어 있던 동일한 행 내의 이전 화소에 대한 WMC인 WMC(x-1,y,d)를 사용함으로써 계산할 수 있다.In Equation 2, WMC (x, y, d) is a similarity between R (x, y), which is a pixel of the x-th column of the reference image, and a registration window centered on pixel coordinates L (x + d, y) of the searched image. It can be obtained by accumulating the matching S (x + i, y, d) between vertical columns by accumulating from i = −wx to wx in the WMC buffer and adding all of them. For x values greater than wx, WMC (x, y, d) is WMC (x-1, y, which is the WMC for the previous pixel in the same row that was stored in the WMC buffer, as shown in equations 3 and 4 can be calculated by using d).

즉, 이전에 계산된 WMC 값에 창에 새로 추가되는 수직열에 대한 S 값인 S(x+wx,y,d)를 더하고, 창에서 제외되는 수직열에 대한 S 값인 S(x-wx-1,y,d)를 빼 줌으로써, 현재 창에 대한 WMC(x,y,d)를 용이하게 계산할 수 있다. 유사하게, wy 보다 큰 y 값에 대하여 WMC(x,y,d) 값을 계산할 때는 위의 과정을 반복함으로써 변위값을 구한다.That is, add S (x + wx, y, d), the S value for the vertical column that is newly added to the window, to S (x-wx-1, y, the S value for the vertical column excluded from the window. By subtracting d, it is easy to calculate WMC (x, y, d) for the current window. Similarly, when calculating the value of WMC (x, y, d) for y value greater than wy, the displacement value is obtained by repeating the above process.

요약하면, (wy)번째 행의 각 화소를 중심으로 하는 수직열들에 대한 S 값으로 S 버퍼를 초기화하고, 한 행의 (wx)번째 화소에 대한 WMC 값으로 WMC 버퍼를 초기화한 이후에는, 다른 WMC 값들은 수학식 3에 의해 중복 연산없이 구할 수 있다. 이때, 각 화소의 탐색 변위는 동일해야만 한다. 기준 영상의 화소 R(x, y)에 대해서 탐색 범위 내에 있는 탐색 영상의 각각의 화소에 대한 WMC 정합 결과 중 최대값을 갖는 화소가 L(x+dmax,y)라면 dmax가 R(x,y)에 대한 스테레오 변위가 된다.In summary, after initializing the S buffer with the S value for the vertical columns centered on each pixel of the (wy) th row, and initializing the WMC buffer with the WMC value for the (wx) th pixel of one row, Other WMC values can be obtained without using redundant operations by Equation 3. At this time, the search displacement of each pixel should be the same. If the pixel having the maximum value among the WMC matching results for each pixel of the searched image within the searched range for the pixel R (x, y) of the reference image is L (x + d max , y), d max is R (x , y) is the stereo displacement for.

도 5는 본 발명의 한 실시예에 따른 중복 계산이 제거된 WMC 스테레오 변위 측정장치를 도시한 구성 블록도이다. 이 실시예에서는 창의 크기(Wx×Wy)가 11×11이고, Sr은 63인 경우를 예로 들어 설명한다. 기준 및 탐색 영상의 화소값들과 두 화소가 유사한 지를 결정하는 문턱값 Th가 입력되며, 수평 동기신호(Hsync)와 수직 동기신호(Vsync)가 입력된다. 또한, 기준영상의 화소 R(x,y)에서 최대 WMC(x,y,d)와 그때의 변위 DM(x,y)값이 출력된다.FIG. 5 is a block diagram illustrating a WMC stereo displacement measuring apparatus in which duplicate calculations are removed according to an embodiment of the present invention. In this embodiment, the case where the window size Wx × Wy is 11 × 11 and Sr is 63 will be described as an example. A threshold Th for determining whether two pixels are similar to pixel values of the reference and search images is input, and a horizontal sync signal Hsync and a vertical sync signal Vsync are input. Further, the maximum WMC (x, y, d) and the displacement DM (x, y) values at that time are output from the pixel R (x, y) of the reference video.

이 WMC 스테레오 변위 측정장치는 WMC 프로세서(200)와 S-버퍼(100)를 포함한다. 이 WMC 프로세서(200)는 스트립(strip) 연산기(210)와, WMC 유니트(220), WMC 버퍼(230), WMC 갱신부(260), 최대 WMC 선택부(240) 및 제어유니트(250)로 구성된다.The WMC stereo displacement measuring device includes a WMC processor 200 and an S-buffer 100. The WMC processor 200 includes a strip operator 210, a WMC unit 220, a WMC buffer 230, a WMC updater 260, a maximum WMC selector 240, and a control unit 250. It is composed.

스트립 연산기(210)는 Sr+1개의 S-유니트를 포함하여 각 기준화소 R(x,y)에 대해서 탐색범위에 대해 Sr+1개의 S값을 병렬로 계산하여 S버퍼(100)에 저장한다. WMC 유니트(220)는 스트립 연산기(210)에서 연산된 S값을 S-버퍼(100)에서 읽어와서 WMC(x,y,d)값을 계산한 후 WMC버퍼(230)에 저장한다. WMC갱신부(260)는 갱신된 WMC값을 구하고, 최대 WMC 선택부(240)는 WMC 갱신부(260)로부터 화소 R(x,y)에 대한 WMC값을 입력받아서 가장 큰 WMC(x,y,d)값을 선택하고, 그 때의 변위를 DM(x,y)값으로 출력한다.The strip operator 210 calculates Sr + 1 S values in parallel for the search range for each reference pixel R (x, y) including Sr + 1 S-units and stores them in the S buffer 100. . The WMC unit 220 reads the S value calculated by the strip calculator 210 from the S-buffer 100, calculates the WMC (x, y, d) value, and stores the SMC value in the WMC buffer 230. The WMC updater 260 obtains the updated WMC value, and the maximum WMC selector 240 receives the WMC value for the pixel R (x, y) from the WMC updater 260 to obtain the largest WMC (x, y). , d) value is selected, and the displacement at that time is output as a DM (x, y) value.

각 구성요소들의 내부 회로는 추후에 상세하게 설명하기로 한다.The internal circuit of each component will be described later in detail.

도 6은 도 5에 도시된 바와 같은 순차병렬처리를 이용한 유사도 측정장치의 WMC 스테레오 변위 추출방법을 도시한 동작 흐름도이다.6 is an operation flowchart illustrating a WMC stereo displacement extraction method of a similarity measuring apparatus using sequential parallel processing as shown in FIG. 5.

이 알고리즘에는 기준 영상 및 탐색 영상에서 기준화소 R(x,y)과 탐색화소 L(x,y)의 밝기 강도(여기서, x = 0 ~ Ix-1, y = 0 ~ Iy-1)가 입력되어 도시되지 않은 외부 메모리에 저장된다. 또한, 이 알고리즘에는 정합창의 크기(Wx 및 Wy)(여기서, Wx 및 Wy는 홀수)와, 탐색 범위(Sr)가 입력된다. 또한, 이 알고리즘을 통해서 각 화소에 대한 변위를 내포하고 있는 스테레오 변위를 나타내는 변위 지표 DM(x,y)(여기서, x = wx ~ Ix-wx-Sr, y = wy ~ Iy-wy)가 출력된다.In this algorithm, the brightness intensity of the reference pixel R (x, y) and the search pixel L (x, y) (where x = 0 to Ix-1, y = 0 to Iy-1) is input to the reference image and the search image. And stored in an external memory (not shown). In addition, the size of the matching window Wx and Wy (where Wx and Wy are odd) and the search range Sr are input to this algorithm. In addition, the algorithm outputs displacement index DM (x, y) (where x = wx to Ix-wx-Sr, y = wy to Iy-wy) indicating a stereo displacement containing displacement for each pixel. do.

각 과정을 살펴보면 다음과 같다.Each process is as follows.

먼저, y를 wy로 초기화한다(S501). 여기서, wy는 앞의 수학식 4와 같다. y값 초기화 후, 범위 x = 0 ~ Wx, d = 0 ~ Sr 에서 수직열 S(x,y,d)값을 계산하고, 그 결과를 S 버퍼에 저장한다(S502). S(·)값은 앞의 수학식 5를 이용하여 구할 수 있다. S 버퍼에 저장되는 S 값은 정합창의 수직열에 해당하는 크기인 Wy에 대한 유사도를 나타내며 Sr×Wx 개의 버퍼에 저장된다.First, y is initialized to wy (S501). Here, wy is the same as Equation 4 above. After initializing the y value, the vertical string S (x, y, d) value is calculated in the range x = 0 to Wx and d = 0 to Sr, and the result is stored in the S buffer (S502). The S (·) value can be obtained using Equation 5 above. The S value stored in the S buffer indicates the similarity with respect to Wy, the size corresponding to the vertical column of the matching window, and is stored in Sr × Wx buffers.

단계 S503에서 WMC(x,y,d)값을 구하기 위한 y의 범위에 대한 조건을 체크하는데, y = ly-wy-1 이면 모든 영상에 대해 WMC(·)를 구하였기 때문에 모든 알고리즘을 종료하고, y = ly-wy-1 이 아니면 WMC(·)를 구해야할 부분이 남아있기 때문에 다음 단계(S504)로 진행한다.In step S503, the condition for the range of y to obtain the WMC (x, y, d) value is checked. If y = ly-wy-1, all algorithms are terminated because WMC (·) is obtained for all images. If y = ly-wy-1, since there is a part to be obtained WMC (·), it proceeds to the next step (S504).

단계 S504에서는 x값을 wx로 초기화하고, 단계 S505에서는 x값의 범위에 대한 조건을 체크한다. 즉, x가 lx-wx-Sr 보다 작거나 같으면 해당 행에 WMC(·)를 구해야할 부분이 있기 때문에 다음 단계 S507로 진행하고, x가 lx-wx-Sr 보다 크면 y값을 하나 증가시킨 후(S506), 단계 S502로 되돌아간다.In step S504, the x value is initialized to wx, and in step S505, the condition for the range of the x value is checked. That is, if x is less than or equal to lx-wx-Sr, there is a part to obtain WMC (·) in the row, so proceed to step S507. If x is greater than lx-wx-Sr, increase y by one. (S506), the flow returns to step S502.

다음, d 값과 최대 WMC(Max_WMC)값을 초기화하고(S507), 단계 S508에서 d 값의 범위와 x 값의 범위를 다시 체크한다. x가 lx-Sr-wx보다 작거나 같으면, 다음 단계(S510)를 수행하고 단계 S508의 조건을 만족하지 않으면 x값을 하나 증가시킨 후(S509), 단계 S505로 되돌아간다.Next, the d value and the maximum WMC (Max_WMC) value are initialized (S507). In step S508, the range of the d value and the range of the x value are checked again. If x is less than or equal to lx-Sr-wx, the next step (S510) is performed. If the condition of step S508 is not satisfied, the value of x is increased by one (S509), and the process returns to step S505.

단계 S510에서는 x가 wx보다 작거나 같은지를 체크하여, x가 wx보다 크면 단계 S511로 진행하여 이전 단계에서의 WMC(·)값을 참조하여 현 단계의 WMC(·)값을 구하고, x가 wx보다 작거나 같으면 단계 S515로 진행하여 직렬 WMC(·)값을 계산한다. 단계 S515에서는 위의 수학식 2를 적용하여 WMC(·)값을 구하고 단계 S516으로 진행한다. 단계 S511에서는 x가 lx-Sr-wx 보다 작은지를 체크하는데, x가 lx-Sr-wx보다 작으면 수학식 3을 적용하여 WMC(·)값을 구하고 단계 S516으로 진행하고, x가 lx-Sr-wx보다 작지 않으면 WMC(·)값을 0으로 설정한 후 단계 S516으로 진행한다.In step S510, it is checked whether x is less than or equal to wx, and if x is greater than wx, the process proceeds to step S511 to obtain the WMC (·) value of the current step by referring to the WMC (·) value in the previous step, and x is wx. If less than or equal to, the flow advances to step S515 to calculate the serial WMC (·) value. In step S515, the above equation 2 is applied to obtain a WMC (·) value, and the flow proceeds to step S516. In step S511, it is checked whether x is less than lx-Sr-wx. If x is less than lx-Sr-wx, Equation 3 is applied to obtain a WMC (·) value, and the process proceeds to step S516, where x is lx-Sr. If it is not less than -wx, the value is set to 0, and the process proceeds to step S516.

한편, 단계 S516에서 현재 구해진 WMC(·)가 현재 저장된 최대 WMC값(Ma_WMC)보다 크면 최대 WMC값에 현재 구해진 WMC(·)값을 저장하고, 그때의 d 값을 DM(x,y)에 저장한다(S517). 그리고 나서 d를 하나 증가시킨 후(S518) 단계 S508로 진행한다.On the other hand, if the WMC (·) currently obtained in step S516 is greater than the currently stored maximum WMC value Ma_WMC, the currently obtained WMC (·) value is stored at the maximum WMC value, and the d value at that time is stored in DM (x, y). (S517). Then, d is increased by one (S518), and the flow proceeds to step S508.

이하에서는 앞서 도 5에서 설명하였던 순차병렬처리를 이용한 스테레오 변위 결정장치의 각 구성요소를 보다 상세하게 설명하기로 한다.Hereinafter, each component of the stereo displacement determining apparatus using the sequential parallel processing described above with reference to FIG. 5 will be described in more detail.

도 7은 스트립 연산기(210)의 내부 구조를 보여주고 있다. 스트립 연산기(210)는 (Sr+1)개의 S-유니트(211, 212)로 구성된다. 이 S-유니트(211, 212)는 화소값 R(x,y) 및 L(x+d,y)(여기서, d는 0 ∼ Sr)에 대해 수학식 1에 나타낸 바와 같이 P(x,y,d) 연산을 수행하고, 그 P(x,y,d) 결과값을 정합창의 수직 크기인 Wy에 대해 누적을 수행하여 수직열의 S값을 구한 후, 계산된 S값을 S-버퍼(100)에 저장한다.7 shows the internal structure of the strip calculator 210. The strip operator 210 is composed of (Sr + 1) S-units 211, 212. These S-units 211 and 212 are P (x, y) as shown in Equation 1 for pixel values R (x, y) and L (x + d, y), where d is 0 to Sr. d) calculates the S value of the vertical column by performing the operation, accumulating the resultant P (x, y, d) with respect to Wy, the vertical size of the registration window, and then calculating the S value of the S-buffer ( 100).

도 8a 내지 도 8b는 각각 S-유니트(211, 212)의 내부 구조를 나타낸다.8A to 8B show the internal structure of the S-units 211 and 212, respectively.

S-유니트(211)는 기준 수직열과 d = 63인 탐색 수직열의 유사도인 S값을 구하는 소자이다. 이 S-유니트(211)는 탐색 수직열의 각 픽셀의 밝기값이 순차적으로 입력되면 이를 병렬로 변환하여 S-유니트(212)에 제공하는 직렬/병렬 변환기(211a)와, 기준 수직열과 상기 탐색 수직열의 각 픽셀들의 밝기값의 차를 구하는 차 절대값 계산기(211b)와, 차 절대값 계산기(211b)의 결과값과 임계치를 비교하여 결과값이 크면 0, 임계치가 크면 1을 출력하는 비교기(211c)와, 해당 수직열의 각 픽셀에 대한 비교기(211c)의 결과값을 누적하는 가산기(211d) 및 상기 가산기(211d)의 누적값(4bit)을 버퍼링한 후 S-버퍼(100)에 출력하는 D플립플럽(211e)을 포함한다.The S-unit 211 obtains an S value that is similarity between the reference vertical column and the search vertical column having d = 63. The S-unit 211 has a serial / parallel converter 211a for converting the brightness values of each pixel of the search vertical column sequentially into the S-unit 212 and providing them to the S-unit 212. The absolute value calculator 211b which calculates the difference of the brightness value of each pixel of a column, and the comparator 211c which compares the result value of the absolute value calculator 211b with a threshold, and outputs 0 if the result value is large, and 1 if the threshold value is large. ) And an adder 211d for accumulating the resultant values of the comparator 211c for each pixel of the corresponding vertical column, and a cumulative value (4bit) of the adder 211d, and outputting the buffers to the S-buffer 100. A flip flop 211e is included.

마찬가지로, S-유니트(212)는 상기 기준 수직열과 d = 62 ~ 0인 탐색 수직열의 S값을 각각 구하는 소자이다. 이 S-유니트(212)는 S-유니트(211) 또는 앞단의S-유니트(212)를 통해 전달되는 병렬 상태의 탐색 수직열의 밝기값들을 입력받아 다음 S-유니트로 전달하고, 탐색 수직열의 밝기값들을 순차적으로 출력하는 병렬/직렬 변환기(212a)와, 기준 수직열과 비교대상인 탐색 수직열을 이루는 각 픽셀들의 밝기값의 차를 구하는 차 절대값 계산기(212b)와, 차 절대값 계산기(212b)의 결과값과 임계치를 비교하여 결과값이 크면 0, 임계치가 크면 1을 출력하는 비교기(212c)와, 해당 수직열의 각 픽셀에 대한 비교기(212c)의 결과값을 누적하는 가산기(212d) 및 상기 가산기(212d)의 누적값(4bit)을 버퍼링한 후 S-버퍼(100)에 출력하는 D플립플럽(212e)을 포함한다.Similarly, the S-unit 212 is an element that obtains S values of the reference vertical column and the search vertical column of d = 62 to 0, respectively. The S-unit 212 receives the brightness values of the parallel search column transmitted through the S-unit 211 or the front S-unit 212 and transfers the brightness values of the search vertical column to the next S-unit. A parallel / serial converter 212a for sequentially outputting values, a difference absolute value calculator 212b for obtaining a difference between brightness values of pixels forming a search vertical column to be compared with a reference vertical column, and a difference absolute value calculator 212b The comparator 212c outputs 0 when the result value is large and 1 when the threshold value is large, and an adder 212d that accumulates the result value of the comparator 212c for each pixel of the vertical column. And a D flip flop 212e which buffers the accumulated value (4 bits) of the adder 212d and outputs the buffered value to the S-buffer 100.

이 S-유니트들은 시스토릭 어레이 방식으로 기준 수직열과 탐색 수직열의 S값을 구하는데, 도 9a 내지 도 9b를 참조하여 이를 설명하기로 한다. 도 9a 내지 도 9b는 우 영상이 기준영상이고 좌 영상이 탐색영상이며, Wx = Wy = 11, Sr = 63, d = 0 ∼ 63, wx = wy = 5 인 경우를 예로 들어 스트립 연산기의 동작 상태를 설명하기 위하여 도시한 도면이다.These S-units obtain S values of the reference vertical column and the search vertical column in a systolic array method, which will be described with reference to FIGS. 9A to 9B. 9A to 9B illustrate an operation state of a strip operator, for example, when a right image is a reference image, a left image is a search image, and Wx = Wy = 11, Sr = 63, d = 0 to 63, and wx = wy = 5 Figure is for explaining.

먼저, 하나의 수직열을 이루는 11픽셀의 밝기값은 순차적으로 S-유니트(211)에 입력되는데, 이 S-유니트(211)의 직렬/병렬 변환기는 11픽셀의 밝기값들을 병렬로 변환하여 하나의 수직열 단위로 만들고, 이 병렬 데이터를 다음 S-유니트에 전달한다.First, the brightness values of 11 pixels forming one vertical column are sequentially input to the S-unit 211. The serial / parallel converter of the S-unit 211 converts the brightness values of 11 pixels in parallel to one another. It is made up of vertical columns of and passes this parallel data to the next S-unit.

첫 번째 기준 수직열에 대한 모든 d값의 S값을 구하기 위해, 도 9a에 도시된 바와 같은 첫 번째 계산(1st Calculation)부터 64번째 계산(64th Calculation)이이루어진다. 탐색 영상이 첫 번째 수직열 L0내지 64번째 수직열 L63이 순차적으로 입력되면, 먼저 입력된 수직열은 다음 S-유니트에 순차적으로 쉬프트되어, 64번째 탐색 수직열 L63이 입력되면 도 9a의 64th Calculation단계와 같이 된다. 이 64번째 탐색 수직열이 입력되면 동시에 첫 번째 기준 수직열(R0)이 입력되고, 이때, 각 S-유니트들이 S값을 구한다. 각 S-유니트들이 S값을 구하는 과정은 도 8a 내지 도 8b를 참조하여 이미 설명하였다.In order to find the S values of all d values for the first reference vertical column, the first calculation (1st Calculation) as shown in FIG. 9A is performed from the 64th calculation (64th Calculation). When the search image is sequentially inputted from the first vertical column L 0 to the 64th vertical column L 63 , the first input vertical column is sequentially shifted to the next S-unit, and when the 64th search vertical column L 63 is input, FIG. 9A. The 64th Calculation step of. When the 64th search vertical column is input, the first reference vertical column R 0 is input at the same time, and each S-unit obtains an S value. The process of obtaining S values for each S-unit has been described with reference to FIGS. 8A to 8B.

다음 65번째 계산단계부터는 탐색 수직열과 기준 수직열이 동시에 입력되는데, 기준 수직열(Ri)과 탐색 수직열(Li+Sr)이 동시에 입력되어 각 S-유니트에서 S값을 구한다. 각 S-유니트는 기준 수직열(Ri)과 d = 0 ∼ 63 인 각각의 탐색 수직열(Li+d)과의 S값을 구한다.From the next 65th calculation step, the search vertical column and the reference vertical column are simultaneously input, and the reference vertical column R i and the search vertical column L i + Sr are simultaneously input to obtain an S value in each S-unit. Each S-unit finds the S value of the reference vertical column R i and each of the search vertical columns L i + d having d = 0 to 63.

이렇게 마지막 계산단계에서는 기준 수직열 Rlast-63과 탐색 수직열 Llast가 입력되어 기준 수직열 Rlast-63과 d = 0 ∼ 63 인 각각의 탐색 수직열(Llast-63∼ Llast)과의 S값을 구한다.In the final calculation step, the reference vertical columns R last-63 and the search vertical column L last are inputted, and the search vertical columns R last-63 and each of the search vertical columns L last-63 to L last with d = 0 to 63 and Find the S value of.

앞서 설명한 바와 같이 순차적으로 구해지는 기준 수직열과 탐색 수직열과의 S값은 S버퍼에 저장되는데, 도 10은 도 5의 S-버퍼(100)의 내부 구조도이고, 도 11은 도 10에 도시된 S-레지스터(110)의 내부 구조도이다.As described above, the S values of the reference vertical sequence and the search vertical sequence which are sequentially obtained are stored in the S buffer. FIG. 10 is an internal structure diagram of the S-buffer 100 of FIG. 5, and FIG. 11 is S of FIG. 10. It is an internal structure diagram of the register 110.

S-버퍼(100)는 모두 (Wx + 1)개의 S-레지스터(110)와 Wx 개의 MUX(120), 그리고 하나의 카운터(130)로 구성된다. 스트립 연산기(210)내의 각 S-유니트(211, 212)로부터 출력되는 정합창의 수직 크기인 Wy+1에 대한 WMC 값들이 병렬로 들어오는 Sr+1 개의 4-비트값이 입력되어 S-레지스터(110)에 저장된다. 이 값들은 S-레지스터(110)에 의해 시스템 클럭에 따라 화살표 방향으로 쉬프트된다. 전체 S-레지스터(110)의 크기는 4*(Sr+1)*(Wy+1)이며, 6-비트 카운터에 의해 정합창의 수직 크기(Wy+1)에 대한 출력 값이 (Wx+1)개만큼 출력된다. 이렇게 함으로써, 하나의 정합 창에 대한 WMC 값이 구해지고, 연속적으로 WMC 값을 구할 수 있게 된다.The S-buffer 100 is composed of all (Wx + 1) S-registers 110, Wx MUX 120, and one counter 130. Sr + 1 4-bit values into which the WMC values for Wy + 1, the vertical size of the matching window output from the respective S-units 211 and 212 in the strip operator 210, are input in parallel, are inputted. 110). These values are shifted in the direction of the arrow by the S-register 110 in accordance with the system clock. The size of the entire S-register 110 is 4 * (Sr + 1) * (Wy + 1), and the output value for the vertical size (Wy + 1) of the matching window is (Wx + 1) by the 6-bit counter. ) Output. By doing so, the WMC value for one matching window is obtained, and the WMC value can be obtained continuously.

도 12를 참조하여 상기 S-버퍼의 동작 상태를 설명하면 다음과 같다. 도 12에서 각 블록은 S-레지스터를 간략하게 표시한 것이다. 이 S-버퍼는 시스톨릭 어레이 방식으로 기준 수직열과 d = 0 ∼ 63인 각각의 탐색 수직열과의 S값을 입력받아 WMC 유니트에 제공한다.An operation state of the S-buffer will be described with reference to FIG. 12. Each block in FIG. 12 briefly shows an S-register. This S-buffer receives the S value of the reference vertical column and each search vertical column of d = 0 to 63 in a systolic array manner and provides it to the WMC unit.

스트립 연산기의 64번째 계산단계(도 9a 참조)에서 얻어진 기준 수직열(R0)과 모든 d 범위에서의 탐색 수직열들과의 S값(1st Strip[0][0:63])이 도 12의 (a)에 도시된 바와 같이 S-레지스터 11(110e)에 입력된다. 다음, 도 12의 (b)에 도시된 바와 같이 스트립 연산기의 65번째 계산단계(도 9b 참조)에서 얻어진 기준 수직열(R1)과 모든 d 범위에서의 탐색 수직열들과의 S값(2nd Strip[1][1:64])이 S-레지스터 11에 입력되며, 그전에 입력되었던 1st Strip[0][0:63] 은 S-레지스터 10(110d)으로 쉬프트된다. 이렇게 10개의 S값이 입력된 상태가 도 12의 (c)이고, 11개의 S값이 입력된 상태가 도 12의 (d)에 도시되어 있다.The S value (1st Strip [0] [0:63]) between the reference vertical column R0 obtained in the 64th calculation step (see FIG. 9A) of the strip calculator and the search vertical columns in all d ranges is shown in FIG. As shown in (a), it is input to S-register 11 (110e). Next, as shown in (b) of FIG. 12, the S value (2nd Strip) between the reference vertical column R1 obtained in the 65th calculation step (see FIG. 9B) of the strip calculator and the search vertical columns in all d ranges. [1] [1:64]) is input to the S-register 11, and the 1st Strip [0] [0:63] previously input is shifted to the S-register 10110d. The state in which ten S values are input in this manner is shown in FIG. 12C, and the state in which eleven S values are input is shown in FIG. 12D.

이렇게 S-레지스터들에 저장된 임의의 기준 수직열과 모든 d 범위에서의 탐색 수직열들과의 S값들 중 첫 번째값들을 모두 합하면 d = 0인 경우의 WMC값이 될 것이며, 즉, 1st Strip[0][0]과 2nd Strip[1][1], 10th Strip [9][9], 11th Strip[10][10]을 모두 더하면 WMC(wx,y,0)값이 된다. 그리고, 1st Strip[0][1]과 2nd Strip[1][2], 10th Strip [9][10], 11th Strip[10][11]을 모두 더하면 WMC(wx,y,1)값이 된다. 또한,WMC(wx+1,y,0)은 앞서 수학식 3에 도시된 바와 같이 WMC(wx,y,0)에서 S(wx+wx+1,y,d)는 더하고 S(wx-wx,y,0)는 빼줌으로써, 구할 수 있다.The sum of all the first values of the S values between any reference vertical column stored in the S-registers and the search vertical columns in all d ranges will be the WMC value when d = 0, that is, 1st Strip [0]. ] [0], 2nd Strip [1] [1], 10th Strip [9] [9], and 11th Strip [10] [10] are added to give WMC (wx, y, 0). Then, adding 1st Strip [0] [1], 2nd Strip [1] [2], 10th Strip [9] [10], 11th Strip [10] [11], the value of WMC (wx, y, 1) do. Also, WMC (wx + 1, y, 0) is added to S (wx + wx + 1, y, d) in WMC (wx, y, 0) as shown in Equation 3 above, and S (wx-wx , y, 0) can be found by subtracting.

이를 위해 S-버퍼의 멀티플렉서는 도 13에 도시된 바와 같이 S-레지스터들에 저장된 S값들을 순차적으로 선택하여 WMC 유니트에 출력한다. S-버퍼에서 WMC 유니트로 넘겨주는 (Sr+1)개의 카운트 동안에는 Strip 연산기로 입력이 전달되지 않으며 (Sr+1)개의 클럭 후에 스트립 연산기에 기준영상과 탐색영상이 데이터가 입력된다.To this end, the multiplexer of the S-buffer sequentially selects S values stored in the S-registers and outputs them to the WMC unit, as shown in FIG. During the (Sr + 1) counts that are passed from the S-buffer to the WMC unit, no input is passed to the Strip operator. After the (Sr + 1) clocks, data is input to the base and search images in the strip operator.

WMC 유니트는 순차적으로 입력된 수직열의 S값들을 입력받아 순차적으로 윈도우에 대한 정합값을 구하는데, 이 값이 WMC 버퍼에 전달된다. WMC 버퍼에 전송된 WMC값은 WMC 레지스터에 쓰여지고, 이 값은 WMC-갱신부에서 갱신된 WMC값을 계산하기 위한 값으로 이용된다. 반면에 Max-WMC 선택부로 입력된 WMC값은 최대가 되는 값이 선택되어 스테레오 변위값으로 출력된다.The WMC unit receives the S values of the sequentially input vertical columns and sequentially obtains the matching values for the windows, which are transferred to the WMC buffer. The WMC value sent to the WMC buffer is written to the WMC register, and this value is used as a value for calculating the updated WMC value in the WMC-updater. On the other hand, the maximum value of the WMC input to the Max-WMC selector is selected and output as a stereo displacement value.

도 14, 도 15, 그리고 도 16은 각각 도 5에 도시된 WMC-유니트(220)와 WMC-버퍼(230) 및 WMC-갱신부(260)의 내부 구조도이다. WMC-유니트(220)는 도 6의 흐름도의 단계 S515를 수행하는 구성요소로서, x = wx일 때 Sr+1 개의 d 값에 대해WMC 값을 계산하고 이를 WMC-버퍼(230)에 출력한다. 이 WMC-유니트(220)는 5개의 4비트 가산기와, 3개의 5비트 가산기, 3개의 6비트 플립플롭, 하나의 6비트 가산기 및 하나의 7비트 가산기로 순차적으로 연결되어 구성된다. S버퍼의 멀티플렉서를 통해 출력되는 11개의 4비트 Strip값 중 10개의 4비트 Strip값은 4비트 가산기에 각각 2개씩 입력되고, 5개의 4비트 가산기 중 4개의 결과값은 5비트 가산기에 각각 2개씩 입력되며, 나머지 하나의 4비트 가산기의 출력값과 나머지 하나의 4비트 입력값이 나머지 하나의 5비트 가산기에 입력된다. 5비트 가산기의 출력값은 6비트 플립플롭에 입력되어 동기가 맞춰지고, 6비트 플립플롭에서 동기화된 6비트 출력값이 각각 하나의 6비트 가산기와 7비트 가산기에 입력되어 최종 WMC(x,y,d)값이 얻어지며, 이 WMC(x,y,d)값은 WMC 버퍼(230)에 저장된다.14, 15, and 16 are internal structural diagrams of the WMC-unit 220, the WMC-buffer 230, and the WMC-update unit 260 shown in FIG. The WMC-unit 220 is a component that performs step S515 of the flowchart of FIG. 6, and calculates WMC values for Sr + 1 d values when x = wx and outputs them to the WMC-buffer 230. The WMC-unit 220 consists of five 4-bit adders, three 5-bit adders, three 6-bit flip-flops, one 6-bit adder and one 7-bit adder. Of the 11 4-bit strips output through the S-buffer multiplexer, 10 4-bit strips are input to each of the 4-bit adders, and four of the five 4-bit adders are each output to the 5-bit adder. The output value of the other 4 bit adder and the other 4 bit input value are input to the other 5 bit adder. The output of the 5-bit adder is input to the 6-bit flip-flop for synchronization, and the synchronized 6-bit output from the 6-bit flip-flop is input to one 6-bit adder and the 7-bit adder, respectively, so that the final WMC (x, y, d ) Is obtained, and this WMC (x, y, d) value is stored in the WMC buffer 230.

WMC-버퍼(230)는 WMC-유니트(220)로부터의 WMC 값과 WMC-갱신부(260)의 출력값을 MUX를 통해 레지스터에 저장하고, WMC-갱신부(260)에 입력으로 사용된다. 이 WMC 버퍼와 WMC 갱신부에 의해 도 6의 흐름도의 단계 S514가 수행된다.The WMC-buffer 230 stores the WMC value from the WMC-unit 220 and the output value of the WMC-updater 260 in a register via MUX, and is used as an input to the WMC-updater 260. Step S514 of the flowchart of FIG. 6 is performed by this WMC buffer and WMC updater.

WMC-갱신부(260)는 (Sr+1)개의 뺄셈기와 덧셈기로 구성되어 있으며, 수학식 3에 해당하는 연산을 수행하고, 도 6의 흐름도의 단계 S514를 수행하는 구성요소로서, S(x+wx,y,d)-S(x-1-wx,y,d)에 대한 연산을 수행하고 이 값과 이전의 WMC 결과값과의 덧셈을 수행한다. 여기서 S(x+wx,y,d)와 S(x-1-wx,y,d)는 각각 S-버퍼(100)로부터의 출력값이다.The WMC-updater 260 is composed of (Sr + 1) subtractors and adders, performs an operation corresponding to Equation 3, and performs an operation S514 of the flowchart of FIG. Performs an operation on + wx, y, d) -S (x-1-wx, y, d) and adds this value to the previous WMC result. Where S (x + wx, y, d) and S (x-1-wx, y, d) are the output values from the S-buffer 100, respectively.

즉, 뺄셈기는 이전 WMC 결과값(AccDin0, AccDin1, ..., AccDin63)에서 S(x-1-wx,y,d)를 빼고, 덧셈기는 뺄셈기의 결과값과 S(x+wx,y,d)를 더함으로써, 새로운WMC(x,y,d)를 얻는다.That is, the subtractor subtracts S (x-1-wx, y, d) from the previous WMC results (AccDin0, AccDin1, ..., AccDin63), and the adder subtracts the result of the subtractor and S (x + wx, y). By adding d, new WMC (x, y, d) is obtained.

도 17은 도 5에 도시된 바와 같은 Max_WMC 선택부(240)의 내부 구조도이고 도 18은 도 17에 도시된 병렬 최대값 선택기(241)의 내부 구조이다. Max_WMC 선택부(240)는 (Sr+1) 개의 MUX와 병렬 최대값 선택기(241)로 구성되고, 탐색 구간 내에서 최대 WMC(x, y, d) 값을 비교 및 선택하고 그때의 위치 정보인 DM(x,y) 값을 출력한다. 병렬 최대값 선택기(241)는 4 개의 Comp 유니트(241-1)와 비교기(241-2)들로 구성되며, (Sr+1)인 탐색 구간 내에서 정합창 간의 최대 WMC 값을 선택하고, 그때의 위치 정보를 출력한다.17 is an internal structure diagram of the Max_WMC selector 240 as illustrated in FIG. 5, and FIG. 18 is an internal structure of the parallel maximum selector 241 illustrated in FIG. 17. The Max_WMC selector 240 is composed of (Sr + 1) MUXs and a parallel maximum selector 241, and compares and selects the maximum WMC (x, y, d) values within a search interval, Output the DM (x, y) value. The parallel maximum selector 241 consists of four Comp units 241-1 and a comparator 241-2, and selects the maximum WMC value between the matched windows in the search interval of (Sr + 1), and then Output location information.

도 19는 도 18에 도시된 비교 선택기(241-2)의 내부 구조도이고 20은 도 18에 도시된 Comp 유니트(241-1)의 내부 구조도이다. Comp 유니트(241-1)는 비교 선택기(241-2)들과 레지스터로 구성되며, 16개의 7-비트 입력에 대해 최대 WMC 값과 그 위치 정보를 출력한다. 각각의 비교 선택기(241-2)를 통해 (Sr+1)개의 탐색 구간에 대해 동시에 최대 정합창의 위치와 최대 WMC(x,y,d) 값을 출력한다. 이렇게 해서 마지막 비교 선택기를 통해 출력되는 값은 주어진 화소 R(x,y)에 대한 최대 WMC값 및 그 때의 변위이다.FIG. 19 is an internal structural diagram of the comparison selector 241-2 shown in FIG. 18 and 20 is an internal structural diagram of the Comp unit 241-1 shown in FIG. Comp unit 241-1 is composed of comparison selectors 241-2 and registers, and outputs the maximum WMC value and its position information for 16 7-bit inputs. Each of the comparison selectors 241-2 outputs the position of the maximum matching window and the maximum WMC (x, y, d) value simultaneously for (Sr + 1) search intervals. The value output through the last comparison selector in this way is the maximum WMC value and displacement at that time for a given pixel R (x, y).

도 17의 Max_WMC 선택부는 순차적으로 계산된 WMC 값과 병렬로 계산되는 병렬 WMC 값을 MUX를 통해 선택하고, 병렬 최대값 선택기는 이들 값들 중에서 최대가 되는 WMC 값을 비교함으로써 최대 WMC 값과 변위값을 출력한다. 병렬 최대값 선택기는 4개의 Comp 유니트와 3개의 비교 선택기 및 레지스터로 구성된다. 도 19의 비교 선택기는 비교기를 통해 WMC 비교값을 비교하고 MUX를 통해 변위값인 d가 결정된다. 비교기는 단순히 두 입력값에 대한 크기를 비교하고 큰 값을 출력하게 되며 변위값을 결정할 수 있는 신호를 만들어 준다. Comp 비교 선택기들과 레지스터로 구성되어 있으며 입력 WMC 값들의 크기를 비교하게 되며 가장 큰 WMC 값을 가질 때의 변위 d값을 선택한다.The Max_WMC selector of FIG. 17 selects the sequentially calculated WMC values and parallel WMC values calculated in parallel through MUX, and the parallel maximum selector selects the maximum WMC value and the displacement value by comparing the maximum WMC value among these values. Output The parallel maximum selector consists of four Comp units and three comparison selectors and registers. The comparison selector of FIG. 19 compares the WMC comparison value via a comparator and determines the displacement value d via MUX. The comparator simply compares the magnitudes of the two input values, outputs a large value, and produces a signal to determine the displacement value. Comp Comp selectors and registers are used to compare the magnitude of the input WMC values and select the displacement d value with the largest WMC value.

위에서 양호한 실시예에 근거하여 이 발명을 설명하였지만, 이러한 실시예는 이 발명을 제한하려는 것이 아니라 예시하려는 것이다. 이 발명이 속하는 분야의 숙련자에게는 이 발명의 기술사상을 벗어남이 없이 위 실시예에 대한 다양한 변화나 변경 또는 조절이 가능함이 자명할 것이다. 그러므로, 이 발명의 보호범위는 첨부된 청구범위에 의해서만 한정될 것이며, 위와 같은 변화예나 변경예 또는 조절예를 모두 포함하는 것으로 해석되어야 할 것이다.While the invention has been described above based on the preferred embodiments thereof, these embodiments are intended to illustrate rather than limit the invention. It will be apparent to those skilled in the art that various changes, modifications, or adjustments to the above embodiments can be made without departing from the spirit of the invention. Therefore, the protection scope of the present invention will be limited only by the appended claims, and should be construed as including all such changes, modifications or adjustments.

이상과 같이 본 발명에 의하면, 탐색 영역의 화소 밝기값을 직접 이용하지 않고, 정합창 내에서 밝기가 비슷한 정합화소의 개수(Window Matching Count : WMC)를 누적하고 이를 순차병렬처리하여 유사도를 측정함으로써, 스테레오 변위 추정에서 경계의 지나침 현상이 발생하지 않는 효과가 있다.As described above, according to the present invention, by accumulating the number of matching pixels (Window Matching Count: WMC) having similar brightness in the matching window without directly using the pixel brightness value of the search area, and measuring the similarity by sequential parallel processing. In the stereo displacement estimation, the boundary overpass does not occur.

Claims (12)

기준영상의 임의의 한 기준화소를 중심으로 하는 일정한 크기의 기준창과, 상기 기준화소에 대하여 에피폴라 구속조건을 만족하는 탐색영상의 다른 한 점을 중심으로 하는 상기 기준창과 동일한 크기를 갖는 탐색창 각각의 전체 화소들에 대하여 서로 대응하는 위치에 있는 기준창의 화소와 탐색창의 화소간의 밝기값의 차이가 임계값 이하인 화소들의 수를 카운트하여 유사도를 측정하고 스테레오 변위를 결정하는 장치에 있어서,A reference window having a constant size centering on one reference pixel of the reference image, and a search window having the same size as the reference window centering on another point of the search image satisfying an epipolar constraint with respect to the reference pixel An apparatus for measuring similarity and determining stereo displacement by counting the number of pixels whose difference in brightness between a pixel of a reference window and a pixel of a search window at a position corresponding to each other for all pixels of the pixel is equal to or less than a threshold value. 상기 기준영상과 탐색영상을 입력받아 상기 기준영상의 기준 수직열과 탐색영상의 탐색범위 내의 모든 탐색 수직열들과의 S값들을 병렬로 계산하는 스트립 연산기와;A strip calculator which receives the reference image and the search image and calculates S values of the reference vertical column of the reference image and all search vertical columns in the search range of the search image in parallel; 상기 스트립 연산기에서 병렬로 계산된 S값들을 입력받아 저장하는 S버퍼와;An S buffer for receiving and storing S values calculated in parallel in the strip calculator; 상기 S버퍼로부터 상기 기준 수직열과 탐색 수직열들과의 S값들을 입력받아 상기 기준영상의 상기 기준화소를 중심으로 하는 기준창과 탐색영상의 탐색범위 내의 모든 탐색창과의 WMC값들을 계산하는 WMC 유니트와;A WMC unit which receives S values of the reference vertical column and the search vertical columns from the S buffer and calculates WMC values of a reference window centered on the reference pixel of the reference image and all search windows within the search range of the search image; ; 상기 WMC 유니트에서 구해진 기준창과 모든 탐색창과의 WMC값들 중에서 가장 큰 값을 최대 WMC값으로 출력하고, 그때의 기준화소와 탐색창의 중심화소와의 위치 차를 스테레오 변위로 설정하는 Max-WMC 선택기를 포함한 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정장치.The Max-WMC selector outputs the largest WMC value among the WMC values of the reference window and all the search windows obtained from the WMC unit, and sets the positional difference between the reference pixel and the center pixel of the search window as a stereo displacement. Stereo displacement determination device using a sequential parallel processing, characterized in that. 제 1 항에 있어서,The method of claim 1, 상기 WMC 유니트에서 출력되는 WMC값과 상기 S버퍼에서 출력되는 S값을 이용하여 다음 기준창과 탐색창들과의 WMC값을 계산하는 WMC 갱신부를 더 포함한 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정장치.And a WMC updating unit for calculating a WMC value between the next reference window and the search windows using the WMC value output from the WMC unit and the S value output from the S buffer. Device. 제 1 항 또는 제 2 항에 있어서, 상기 스트립 연산기는,The method of claim 1, wherein the strip calculator, 병렬로 연결된 하나의 제 1 S-유니트와 적어도 Sr 개의 제 2 S-유니트를 포함하며,One first S-unit and at least Sr second S-units connected in parallel, 외부로부터 입력되는 탐색 수직열들이 상기 하나의 제 1 S-유니트 내지 Sr 개의 제 2 S-유니트에 순차적으로 쉬프트되고, 상기 각 S-유니트는 상호 대응되는 탐색 수직열의 각 화소와 기준 수직열의 각 화소와의 밝기차를 이용하여 상기 기준 수직열과 탐색 수직열의 S값을 구함으로써,Search vertical columns input from the outside are sequentially shifted to the first S-units to the Sr second S-units, and each S-unit is each pixel of the corresponding search vertical column and each pixel of the reference vertical column. By calculating the S value of the reference vertical column and the search vertical column using the brightness difference between and 상기 제 1 S-유니트는 상기 기준 수직열과 d = 63인 탐색 수직열간의 S값을 구하고, 상기 제 2 S-유니트는 상기 기준 수직열과 d = 62 ∼ 0인 탐색 수직열간의 S값을 각각 구하는 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정장치.The first S-unit obtains an S value between the reference vertical column and the search vertical column having d = 63, and the second S-unit obtains an S value between the reference vertical column and the search vertical column having d = 62 to 0, respectively. Stereo displacement determination device using a sequential parallel processing, characterized in that. 제 3 항에 있어서, 상기 제 1 S-유니트는,The method of claim 3, wherein the first S-unit, 상기 탐색 수직열의 각 화소의 밝기값이 순차적으로 입력되면 이를 병렬로 변환하여 후단의 제 2 S-유니트에 제공하는 직렬/병렬 변환기와,A serial / parallel converter for converting the brightness values of each pixel of the search vertical column into a second S-unit at a later stage by converting them in parallel; 상기 기준 수직열과 상기 탐색 수직열의 각 화소들의 밝기값의 차를 구하는 차 절대값 계산기와,A difference absolute value calculator for obtaining a difference between brightness values of the pixels in the reference vertical column and the search vertical column; 상기 차 절대값 계산기의 결과값과 임계치를 비교하여 결과값이 크면 0, 임계치가 크면 1을 출력하는 비교기와,A comparator for comparing the result value of the difference calculator with a threshold and outputting 0 if the result value is large and 1 if the threshold value is large; 해당 수직열의 각 픽셀에 대한 상기 비교기의 결과값을 누적하는 가산기, 및An adder that accumulates the result of the comparator for each pixel of the vertical column, and 상기 가산기의 누적값을 버퍼링한 후 상기 S-버퍼에 출력하는 D플립플럽을 포함한 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정장치.And a D flip-flop that buffers the accumulated value of the adder and outputs the S-buffer to the S-buffer. 제 3 항에 있어서, 상기 제 2 S-유니트는,The method of claim 3, wherein the second S-unit, 상기 제 1 S-유니트 또는 전단의 제 2 S-유니트를 통해 전달되는 병렬 상태의 탐색 수직열의 밝기값들을 입력받아 후단의 제 2 S-유니트로 전달하고, 탐색 수직열의 밝기값들을 직렬 상태로 변환하여 출력하는 병렬/직렬 변환기와,Receives the brightness values of the search vertical column in the parallel state transmitted through the first S-unit or the second S-unit at the front end, transfers them to the second S-unit at the rear end, and converts the brightness values of the search vertical column to the serial state. Parallel to serial converter, 상기 기준 수직열과 비교대상인 탐색 수직열을 이루는 각 픽셀들의 밝기값의 차를 구하는 차 절대값 계산기와,A difference absolute value calculator for obtaining a difference between brightness values of pixels constituting the search vertical column to be compared with the reference vertical column; 상기 차 절대값 계산기의 결과값과 임계치를 비교하여 결과값이 크면 0, 임계치가 크면 1을 출력하는 비교기와,A comparator for comparing the result value of the difference calculator with a threshold and outputting 0 if the result value is large and 1 if the threshold value is large; 해당 수직열의 각 픽셀에 대한 비교기의 결과값을 누적하는 가산기, 및An adder that accumulates the result of the comparator for each pixel of the vertical column, and 상기 가산기의 누적값을 버퍼링한 후 상기 S-버퍼에 출력하는 D플립플럽을 포함한 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정장치.And a D flip-flop that buffers the accumulated value of the adder and outputs the S-buffer to the S-buffer. 제 2 항에 있어서, 상기 S-버퍼는,The method of claim 2, wherein the S-buffer, 상기 스트립 연산기로부터 출력되는 Sr+1개의 S값들을 입력받아 순차적으로 쉬프트하는 상기 정합창의 수평크기(Wx)+1 개의 S-레지스터와,A horizontal size (Wx) +1 S-register of the matching window that sequentially receives Sr + 1 S values output from the strip operator, and shifts sequentially; 상기 Wx+1 개의 S-레지스터의 출력값들을 입력받아 다중화하는 상기 정합창의 수평크기(Wx) 개의 멀티플렉서, 및Horizontal size (Wx) multiplexers of the matching window for receiving and multiplexing the output values of the Wx + 1 S-registers, and 상기 S-레지스터에 입력되는 S값들을 카운트하여 상기 멀티플렉서에 다중화 제어신호를 출력하는 하나의 카운터를 포함한 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정장치.And a counter for counting S values input to the S-register and outputting a multiplexing control signal to the multiplexer. 제 6 항에 있어서, 상기 WMC-유니트는,The method of claim 6, wherein the WMC-unit, 상기 멀티플렉서에서 다중화되어 출력되는 S값들을 입력받아 모두 합하여 WMC값을 출력하는 가산기를 포함한 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정장치.And an adder which receives the S values multiplexed and output from the multiplexer and adds all of them and outputs a WMC value. 제 6 항에 있어서, 상기 WMC-갱신부는,The method of claim 6, wherein the WMC-update unit, 상기 WMC-유니트에서 출력되는 이전 정합창의 WMC값(WMC(x-1,y,d))에서 이전 정합창의 제일 앞 수직열의 S값을 빼는 뺄셈기와, 상기 뺄셈기의 결과값과 현재 정합창의 제일 뒤 수직열의 S값을 더하여 현재 정합창의 WMC값을 출력하는 덧셈기를 포함한 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정장치.A subtractor which subtracts the S value of the first vertical column of the previous matching window from the WMC value (WMC (x-1, y, d)) of the previous matching window output from the WMC-unit, and the result value of the subtractor and the current definition And an adder for adding the S value of the rearmost vertical column of the chorus to output the WMC value of the current matching window. 기준영상의 임의의 한 기준화소를 중심으로 하는 일정한 크기의 기준창과, 상기 기준화소에 대하여 에피폴라 구속조건을 만족하는 탐색영상의 다른 한 점을 중심으로 하는 상기 기준창과 동일한 크기를 갖는 탐색창 각각의 전체 화소들에 대하여 서로 대응하는 위치에 있는 기준창의 화소와 탐색창의 화소간의 밝기값의 차이가 임계값 이하인 화소들의 수를 카운트하여 유사도를 측정하고 스테레오 변위를 결정하는 방법에 있어서,A reference window having a constant size centering on one reference pixel of the reference image, and a search window having the same size as the reference window centering on another point of the search image satisfying an epipolar constraint with respect to the reference pixel A method for measuring similarity and determining stereo displacement by counting the number of pixels whose difference in brightness between a pixel of a reference window and a pixel of a search window at a position corresponding to each other for all pixels of the pixel is equal to or less than a threshold value, 상기 기준영상과 탐색영상을 입력받아 상기 기준영상의 기준 수직열과 탐색영상의 탐색범위 내의 모든 탐색 수직열들과의 S값들을 병렬로 계산하는 스트립 연산단계와;A strip calculating step of receiving the reference image and the search image and calculating S values of the reference vertical column of the reference image and all search vertical columns in the search range of the search image in parallel; 상기 스트립 연산단계에서 병렬로 계산된 S값들을 입력받아 상기 기준영상의 상기 기준화소를 중심으로 하는 기준창과 탐색영상의 탐색범위 내의 모든 탐색창과의 WMC값들을 계산하는 WMC 계산단계와;A WMC calculating step of receiving W values calculated in parallel in the strip calculating step and calculating WMC values of a reference window centered on the reference pixel of the reference image and all search windows within a search range of the search image; 상기 기준창과 모든 탐색창과의 WMC값들 중에서 가장 큰 값을 최대 WMC값으로 출력하고, 그때의 기준화소와 탐색창의 중심화소와의 위치 차를 스테레오 변위로 설정하는 Max-WMC 출력단계를 포함한 것을 특징으로 순차병렬처리를 이용한 스테레오 변위 결정방법.And a Max-WMC output step of outputting the largest WMC value among the WMC values of the reference window and all the search windows as the maximum WMC value, and setting the positional difference between the reference pixel and the center pixel of the search window as stereo displacement. Stereo Displacement Determination Using Sequential Parallel Processing. 제 9 항에 있어서, 상기 스트립 연산단계는,The method of claim 9, wherein the strip operation step, 상기 기준영상의 기준 수직열의 각 화소와, 상기 기준 수직열의 각 화소에 대응하는 탐색영상의 탐색 수직열의 각 화소와의 밝기차가 임계치 이하인 화소들의 개수를 구하여 정합창의 S값으로 설정하는 단계인 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정방법.Obtaining a number of pixels whose brightness difference between each pixel of the reference vertical column of the reference image and each pixel of the search vertical column of the searched image corresponding to each pixel of the reference vertical column is equal to or less than a threshold value and setting the S value of the registration window as an S value; A stereo displacement determination method using sequential parallel processing. 제 9 항에 있어서, 상기 WMC 계산단계는,The method of claim 9, wherein the WMC calculation step, 상기 정합창이 상기 기준영상의 x축 방향으로 제일 앞 창이면, 아래의 수식을 이용하여 상기 정합창의 WMC값을 구하는 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정방법.And if the registration window is the front window in the x-axis direction of the reference image, determining the WMC value of the registration window by using the following equation. [수식][Equation] 여기서, wy는 {정합창의 수직크기(Wy)-1}/2 이다.Here, wy is {vertical size (Wy) -1} / 2 of the matching window. 제 9 항에 있어서, 상기 WMC 계산단계는,The method of claim 9, wherein the WMC calculation step, 상기 정합창이 상기 기준영상의 x축 방향으로 제일 앞 창이 아니면, 아래의 수식을 이용하여 상기 정합창의 WMC값을 구하는 것을 특징으로 하는 순차병렬처리를 이용한 스테레오 변위 결정방법.If the registration window is not the front window in the x-axis direction of the reference image, the stereo displacement determination method using the sequential parallel processing characterized in that to obtain the WMC value of the registration window using the following equation. [수식][Equation] 여기서, wx는 {정합창의 수평크기(Wy)-1}/2 이고, wy는 {정합창의 수직크기(Wy)-1}/2 이다.Here, wx is {horizontal size (Wy) -1} / 2 of the matching window and wy is {vertical size (Wy) -1} / 2 of the matching window.
KR1020010022680A 2000-06-22 2001-04-26 Stereo disparity decision apparatus and method Abandoned KR20020001502A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/886,294 US20020012459A1 (en) 2000-06-22 2001-06-21 Method and apparatus for detecting stereo disparity in sequential parallel processing mode

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020000034510A KR20000058657A (en) 2000-06-22 2000-06-22 Architecture for Measuring DisparIty using Memory Structual OptimIzed and Matching Pixel Count
KR1020000034510 2000-06-22

Publications (1)

Publication Number Publication Date
KR20020001502A true KR20020001502A (en) 2002-01-09

Family

ID=19673250

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020000034510A Pending KR20000058657A (en) 2000-06-22 2000-06-22 Architecture for Measuring DisparIty using Memory Structual OptimIzed and Matching Pixel Count
KR1020010022680A Abandoned KR20020001502A (en) 2000-06-22 2001-04-26 Stereo disparity decision apparatus and method

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020000034510A Pending KR20000058657A (en) 2000-06-22 2000-06-22 Architecture for Measuring DisparIty using Memory Structual OptimIzed and Matching Pixel Count

Country Status (1)

Country Link
KR (2) KR20000058657A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040002041A (en) * 2002-06-29 2004-01-07 칩스브레인(주) An optimized real time stereo disparity decision system using vertical strip structure
CN115100017B (en) 2015-06-10 2025-10-21 无比视视觉技术有限公司 Image processor and method for processing images

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03218581A (en) * 1989-11-01 1991-09-26 Hitachi Ltd Picture segmentation method
US5911035A (en) * 1995-04-12 1999-06-08 Tsao; Thomas Method and apparatus for determining binocular affine disparity and affine invariant distance between two image patterns
JPH09204524A (en) * 1996-01-29 1997-08-05 Olympus Optical Co Ltd Three-dimensional shape recognizer
KR100307883B1 (en) * 1998-04-13 2001-10-19 박호군 Method for measuring similarity by using a matching pixel count and apparatus for implementing the same

Also Published As

Publication number Publication date
KR20000058657A (en) 2000-10-05

Similar Documents

Publication Publication Date Title
US20020012459A1 (en) Method and apparatus for detecting stereo disparity in sequential parallel processing mode
US7333651B1 (en) Method and apparatus for measuring similarity using matching pixel count
CN112070821B (en) A low-power stereo matching system and method for obtaining depth information
US6370194B2 (en) Motion vector estimation circuit and method
JP2978406B2 (en) Apparatus and method for generating motion vector field by eliminating local anomalies
CA2380422C (en) Video image stabilization and registration
EP0594936B1 (en) Apparatus for estimating real-time motion and a method thereof
EP3460757B1 (en) Image processing apparatus and image processing system
CN101014975A (en) Object detection device
JP4496595B2 (en) Image processing apparatus, image processing method, and recording medium
JP2003016427A (en) Parallax estimating method for stereoscopic image
KR20020001502A (en) Stereo disparity decision apparatus and method
CN214587004U (en) Stereo matching acceleration circuit, image processor and three-dimensional imaging electronic equipment
JP2001338280A (en) 3D spatial information input device
JP5316309B2 (en) Image processing apparatus and image processing method
US20030067986A1 (en) Circuit and method for full search block matching
CN114677261B (en) Parallax processing circuit, parallax processing system and method
CN114693642B (en) Nodule matching method and device, electronic equipment and storage medium
KR100971148B1 (en) Parallel Image Processing Apparatus and Method for Image Matching via Brightness Control
KR100795974B1 (en) A device that generates depth-map in real time by processing streaming stereo images
EP1287684A4 (en) METHOD AND SYSTEM FOR IMAGE FUSION
KR100545066B1 (en) Optical sensor device for location tracking and location estimation method using the same
KR20040002041A (en) An optimized real time stereo disparity decision system using vertical strip structure
JP4859168B2 (en) Motion detection device and motion detection method
Efimov et al. Software and hardware implementation of geometric correction technology and fusion of images on a mobile platform

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20010426

PA0201 Request for examination
PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20030219

NORF Unpaid initial registration fee
PC1904 Unpaid initial registration fee