KR100247111B1 - Motion detecting device - Google Patents

Motion detecting device Download PDF

Info

Publication number
KR100247111B1
KR100247111B1 KR1019920001163A KR920001163A KR100247111B1 KR 100247111 B1 KR100247111 B1 KR 100247111B1 KR 1019920001163 A KR1019920001163 A KR 1019920001163A KR 920001163 A KR920001163 A KR 920001163A KR 100247111 B1 KR100247111 B1 KR 100247111B1
Authority
KR
South Korea
Prior art keywords
pixels
value
input
pixel
supplied
Prior art date
Application number
KR1019920001163A
Other languages
Korean (ko)
Other versions
KR920017478A (en
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 이데이 노부유끼
Publication of KR920017478A publication Critical patent/KR920017478A/en
Application granted granted Critical
Publication of KR100247111B1 publication Critical patent/KR100247111B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • G06T7/231Analysis of motion using block-matching using full search
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)

Abstract

하프 화소 정밀도의 움직임 검출을 용이하게 행하도록 한다.Motion detection with half pixel precision is performed easily.

i 사이클째에 Ai 및 ai 의 데이터를 입력 단자(1) 및 (5)에 입력하고, Ai의 데이터를 1/2 로 한 값을 직렬로 접속된 레지스터(3a 내지 3n)에 공급하고, 1/2로 된 값과, 레지스터 (3a, 3b, 3f, 3h, 3l, 3m, 3n)의 출력을 각각 가산기(4a 내지 4h)에 공급하고, ai 의 데이터와 레지스터(3g)의 출력을 감산기(6)에 공급하고, 이 감산기(6)에서의 감산 출력을 가산기(4a 내지 4h)에 공급한다. 그리고 이들의 가산기(4a 내지 4h)에서의 가산 출력을 각각 절대치화 회로(7a 내지 7h)를 거쳐 누산 회로(8a 내지 8h)에 공급하고, 누산 회로(8a 내지 8h)에 단자(9)에서의 인에이블 제어 신호를 공급한다.In the i cycle, data of Ai and ai are input to the input terminals 1 and 5, and a value of 1/2 of Ai data is supplied to the serially connected registers 3a to 3n, and 1 / The value of 2 and the outputs of the registers 3a, 3b, 3f, 3h, 3l, 3m, and 3n are supplied to the adders 4a to 4h, respectively, and the data of ai and the output of the register 3g are subtracted (6). ), And the subtracted output from the subtractor 6 is supplied to the adders 4a to 4h. The outputs of these adders 4a to 4h are supplied to the accumulation circuits 8a to 8h through the absolute value circuits 7a to 7h, respectively, and are supplied to the accumulator circuits 8a to 8h at the terminals 9. Supply the enable control signal.

Description

움직임 검출 장치Motion detection device

제 1 도는 본 발명에 의한 움직임 검출 장치의 일례의 구성도.1 is a configuration diagram of an example of a motion detection apparatus according to the present invention.

제 2 도는 그 설명을 위한 선도.2 is a diagram for illustration thereof.

제 3 도는 그 설명을 위한 선도.3 is a diagram for that explanation.

제 4 도는 움직임 검출 장치의 일례의 흐름도.4 is a flowchart of an example of a motion detection apparatus.

제 5 도는 움직임 검출 장치의 주요부의 구성도.5 is a configuration diagram of an essential part of a motion detection device.

제 6a 도 및 제 6b 도는 1 화소 정밀도의 움직임 검출을 설명하기 위한 선도.6A and 6B are diagrams for explaining motion detection with one pixel precision.

제 7 도는 하프 화소 정밀도의 움직임 검출의 설명을 위한 선도.7 is a diagram for explaining motion detection with half pixel precision.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

1 : A의 데이터가 공급되는 입력 단자1: Input terminal to which data of A is supplied

2 : 데이터를 1 비트 시프트해서 값을 1/2로 하는 수단2: means for shifting the data one bit to half the value

3a 내지 3n : 레지스터 4a 내지 4 h : 가산기3a to 3n: registers 4a to 4h: adder

5 : a의 데이터가 공급되는 입력단자 6 : 감산기5: Input terminal to which data of a is supplied 6: Subtractor

7a 내지 7h : 절대치화 회로 8a 내지 8h : 누산회로7a to 7h: absolute value circuit 8a to 8h: accumulation circuit

9 : 인에블 제어 신호가 공급되는 단자9: Terminal to which enable control signal is supplied

10 : 1 화소 정밀도의 잔류차 S가 공급되는 입력 단자10: Input terminal supplied with residual difference S of 1 pixel precision

11 : 비교 회로11: comparison circuit

12 : 하프 화소 정밀도의 움직임 벡터의 출력단자12: output terminal of motion vector with half pixel precision

본 발명은 예를 들면 동화상 데이터의 고능률 부호화에서 움직임 벡터의 검출 등에 사용되는 움직임 검출 장치에 관한 것이다.The present invention relates to a motion detection device used for, for example, the detection of motion vectors in high efficiency encoding of moving picture data.

예를 들면 동화상 데이터의 고능률 부호화에서 움직임 벡터의 검출 등을 행하는 경우, 예를 들어 풀 서치 블럭 매칭 (full search block matching)에 의한 검출을 행하는 경우에는 소정 화소 수로 구성된 수색범위내의 화소와 그 보다 작은 화소 수로 구성되는 기준 데이터 블럭내의 화소를 그 배열상태에 의하여 비교하는 움직임 검출 장치가 사용된다. 이러한 움직임 검출 장치에서, 통상의 1 화소 정밀도의 움직임을 검출한 후, 얻어진 벡터의 주위 8 방향에 대하여 보간(2 점의 평균치)하는 것에 의하여, 각각 0.5 화소 시프트한 예측 화상을 얻고, 이들 예측 화상중에서 원화상(기준 데이터 블럭)과의 잔류차가 최소로 되는 벡터를 구하는 것(하프 화소(half pel) 정밀도의 움직임 검출)이 행해진다.For example, when a motion vector is detected by high efficiency encoding of moving image data, for example, when detection is performed by full search block matching, a pixel within a search range composed of a predetermined number of pixels, and the like. A motion detection apparatus for comparing pixels in a reference data block composed of a small number of pixels by their arrangement is used. In such a motion detection apparatus, after detecting a motion of a normal one-pixel precision, the predicted images shifted by 0.5 pixels are obtained by interpolating (an average value of two points) in the eight directions around the obtained vector, and these predictive images are obtained. A vector is obtained in which the residual difference with the original image (reference data block) is minimized (motion detection with half pel precision) is performed.

즉, 예를 들면 기준 데이터 블럭이 4 x 4 의 경우에 대하여, 1 화소 정밀도의 움직임 검출을 행하여, 먼저 제 6a, 6b 도에 도시된 바와 같은 움직임 벡터가 구해진 것으로 한다. 여기서 이 때의 잔류차를 S 로 하면That is, for example, in the case where the reference data block is 4 × 4, motion detection with one pixel precision is performed, and motion vectors as shown in Figs. 6A and 6B are obtained first. If the residual difference at this time is S

가 된다. 단 ai는 제 6b 도에 도시된 바와 같은 기준 데이터 블럭의 16 개의 화소, Ai는 제 6a 도에 도시된 것과 같이 수색 범위의 1 화소 정밀도로서 움직임 검출을 한 기준 데이터 블럭에 대응하는 16 개의 화소이다.Becomes Where a i is 16 pixels of the reference data block as shown in FIG. 6B, and A i is 16 pixels corresponding to the reference data block which has detected motion with one pixel precision of the search range as shown in FIG. 6A. Pixel.

이에 대하여 하프 화소(0.5 화소)의 정밀도로서 움직임을 검출하는데는 제 7 도에 나타나듯이 상술의 16 개의 Ai보다 1 회 큰 수색 범위의 화소(6 x 6 개의 데이터)를 사용하여 다음의 수식 1을 계산하여 최소로 되는 sum (·,·)을 찾아내면 좋다.On the other hand, to detect the motion with the accuracy of half pixel (0.5 pixel), as shown in FIG. 7, the following equation 1 is used by using the pixel (6 x 6 data) of the search range larger than the above 16 A i. We can calculate the minimum sum (·, ·) by calculating.

[수식 1][Equation 1]

그러나 종래 하프 화소 정밀도의 움직임 검출을 행하는 경우에 수식 1 을 그대로 실행하도록 하면 식 중에 나타내는 AI+AJ를 계산하지 않으면 안되고, 「(AI+AJ)/2」와 「ak」의 대응이 복잡하고, 용이하게 계산할 수 없었다.However, in the case of performing motion detection with half-pixel accuracy in the related art, if Equation 1 is executed as it is, A I + A J shown in the equation must be calculated, and the correspondence between "(A I + A J ) / 2" and "a k " It was complicated and could not be easily calculated.

본 발명이 해결하려는 문제점은, 종래의 하프 화소 정밀도의 움직임 검출을 행하는 경우에, 계산이 복잡하여, 용이하게 실행할 수 없었다는 것이다.The problem to be solved by the present invention is that when the motion detection with the conventional half pixel precision is performed, the calculation is complicated and could not be easily performed.

본 발명은, 소정 화소 수로서 구성된 수색 범위내의 화소와 상기 소정 화소수 보다 작은 화소 수로서 구성되는 기준 데이터 블럭 내의 화소를 그 배열 상태에 기초하여 비교할 때, 상기 수색 범위내에서 상기 블럭이 취할 수 있는 화소끼리의 대응 상태마다 상기 블럭 내의 각 화소와 상기 수색 범위내의 대응 화소와의 차분 절대치의 합을 연산하는 연산 수단을 가지며, 상기 수색 범위내의 각 화소는 미리 상기 연산 수단에 입력되는 사이클이 설정되도록 하고, 상기 사이클에 기초하여 상기 수색 범위내의 화소를 상기 연산 수단에 입력하여, 순차 대응하는 상기 기준 데이터 블럭내의 화소와 상기 연산을 행하도록 하는 움직임 검출 장치로서,According to the present invention, when a pixel in a search range configured as a predetermined number of pixels and a pixel in a reference data block configured as a number of pixels smaller than the predetermined number of pixels are compared based on the arrangement state, the block can be taken within the search range. Calculation means for calculating a sum of difference absolute values between respective pixels in the block and corresponding pixels in the search range for each corresponding state of the pixels, wherein a cycle inputted to the calculation means is set in advance for each pixel in the search range. A motion detection device configured to input a pixel within the search range to the calculation means based on the cycle to perform the calculation with the pixels in the corresponding reference data block sequentially;

상기 수색 범위내에서 1 화소 이하의 움직임 상태를 검출할 때, 인접하는 화소(입력 단자 (1)) 사이의 평균치와 상기 블럭내의 화소(입력 단자(5))를 비교하도록 하고, 상기 블럭내의 화소와의 각 대응 상태마다 상기 차분 절대치를 얻도록 하고 (가산기 4a 내지 4h, 감산기 6, 절대치화 회로 7a 내지 7h, 누산 회로 8a 내지 8h), 상기 각 대응 상태 사이에서 공통되는 연산(감산기 6)을 선행하여 행하도록 하는 것을 특징으로 하는 움직임 검출 장치이다.When detecting a motion state of one pixel or less within the search range, the average value between adjacent pixels (input terminal 1) is compared with the pixels in the block (input terminal 5), and the pixels in the block The difference absolute value is obtained for each corresponding state (adders 4a to 4h, subtractor 6, absolute value circuits 7a to 7h, accumulator circuits 8a to 8h), and the operation (subtracter 6) common between the corresponding states is performed. A motion detection device characterized by performing in advance.

이것에 의하면, 각 대응 상태 사이에서의 공통하는 연산을 선행하여 행하도록 함으로서 계산이 간략화되므로, 간단한 장치 구성으로 하프 화소 정밀도의 움직임 검출을 행할 수 있다.According to this, the calculation is simplified by performing the common operation among the corresponding states in advance, so that the motion detection with half pixel precision can be performed with a simple device configuration.

그런데 상술의 수식 1 에서 Sum(0,0)을 제외한 8 개의 식 중에서, 공통항을 묶어냄으로서 가산 회수를 감할 수 있다. 입력 항을 적절하게 조작함으로서 「(AI+AJ)/2」와 「ak」의 대응도 간단하게 되고, 장치의 회로 규모를 작게 할 수 있다. 즉, 본원에서는 상술의 수식 1 을 다음의 수식 2 와 같이 변형한다.However, the number of additions can be reduced by grouping the common term among the eight expressions except Sum (0,0) in the above formula (1). By appropriately operating the input term, the correspondence between "(A I + A J ) / 2" and "a k " is also simplified, and the circuit scale of the apparatus can be reduced. That is, in the present application, the above formula 1 is modified as follows.

[수식 2][Formula 2]

이 수식 2 에서 [(A7/2)-a14], [(A8/2)-a15], ... ,[(A28/2)-a35]는 8 개의 식에서 공통이며, 이들 감산은 한번 계산하면, 8 개의 식으로 그 값을 사용할 수 있어서 가감산의 회수를 줄일 수 있다.In the formula 2 [(A 7/2) -a 14], [(A 8/2) -a 15], ..., [(A 28/2) -a 35] is common to 8 wherein Once these subtractions are calculated, the values can be used in eight equations, thereby reducing the number of additions and subtractions.

제 1 도는 장치의 구성을 나타낸다. 이 도면에서, 입력 단자(1)에는 상술한 A 데이터가 공급된다. 이 데이터가 1 비트 시프트(2)되어 값이 1/2 로 된다. 1/2 로 된 값이 직렬로 접속된 레지스터(3a 내지 3n)에 공급된다. 그리고 1/2 된 값과, 레지스터(3a, 3b, 3f, 3h, 3l, 3m, 3n)의 출력이 각각 가산기(4a 내지 4h)에 공급된다.1 shows the configuration of the apparatus. In this figure, the above-mentioned A data is supplied to the input terminal 1. This data is shifted by one bit (2) so that the value is 1/2. A value of 1/2 is supplied to the registers 3a to 3n connected in series. The half value and the outputs of the registers 3a, 3b, 3f, 3h, 3l, 3m, and 3n are supplied to the adders 4a to 4h, respectively.

한편, 입력 단자(5)에는 상술의 a 데이터가 공급된다. 이 입력 단자(5)의 데이터가 감산기 (6)에 공급되고, 레지스터(3g)의 출력이 감산기(6)에 공급되고, 이 값에서 입력 단자(5)에 공급되는 a 의 데이터가 감산된다. 이 감산기(6)에서의 감산 출력이 가산기(4a 내지 4h)에 공급된다. 가산기(4a 내지 4h)에서의 가산 출력이 각각 절대치화 회로(7a 내지 7h)를 거쳐 누산 회로(8a 내지 8h)에 공급된다. 누산 회로(8a 내지 8h)에는 단자(9)에서의 인에이블 제어 신호가 공급된다. 입력 단자(10)에는 상술한 1 화소 정밀도의 움직임 검출로서 구한 움직임 벡터의 잔류차 S 가 공급된다. 그리고, 이 입력 단자(10)에서의 잔류차가 S 값과, 누산 회로(8a 내지 8h)에서의 가산 출력이 비교 회로(11)에 공급되고, 최소로 되는 값이 검출되어, 하프 화소 정밀도의 움직임 벡터가 출력 단자(12)에서 출력된다.On the other hand, the above-mentioned a data is supplied to the input terminal 5. The data of this input terminal 5 is supplied to the subtractor 6, the output of the register 3g is supplied to the subtractor 6, and the data of a supplied to the input terminal 5 is subtracted from this value. The subtraction output in this subtractor 6 is supplied to the adders 4a to 4h. The addition outputs from the adders 4a to 4h are supplied to the accumulation circuits 8a to 8h via the absolute value circuits 7a to 7h, respectively. The enable control signal at the terminal 9 is supplied to the accumulation circuits 8a to 8h. The input terminal 10 is supplied with the residual difference S of the motion vector found as the above-described motion detection with one pixel precision. Then, the residual difference at this input terminal 10 is supplied with the S value, and the addition output at the accumulation circuits 8a to 8h is supplied to the comparison circuit 11, and the minimum value is detected to move the half pixel precision. The vector is output at the output terminal 12.

또한, 이 장치에서, 입력 단자(1)에는 i 사이클 마다 Ai의 데이터가 입력되고, 입력 단자(5)에는 i 사이클 마다 ai 의 데이터가 입력된다. 단 Ai 는 상술한 도 7 의 수색 범위(6 x 6)의 화소이고, ai 은 상술의 제 6B 도에 나타나는 기준 데이터 블럭 16 개의 화소이고, i = 0, 1, 2, ... ,35 이다. 또한 a0내지 a13, a18, a19, a24, a25, a30, a31은 제 6b 도에 도시되어 있지 않지만, 이들에 대응하는 0 내지 13, 18, 19, 24, 25, 30, 31 사이클 째에는 입력 단자(5)에 더미 데이터(dummy data)가 입력된다.In this apparatus, data of A i is input to the input terminal 1 every i cycle, and data of ai is input to the input terminal 5 every i cycle. Where Ai is a pixel in the search range (6 x 6) of FIG. 7 described above, ai is 16 pixels of the reference data block shown in FIG. 6B, and i = 0, 1, 2, ..., 35 . In addition, a 0 to a 13 , a 18 , a 19 , a 24 , a 25 , a 30 , a 31 are not shown in FIG. 6B, but corresponding to 0 to 13, 18, 19, 24, 25, In the 30th and 31st cycles, dummy data is input to the input terminal 5.

따라서, 본 장치에서, 데이터의 입력이 개시되어 14 사이클마다 레지스터(3g)의 출력에는 「입력 단자(1)에 입력된 값이 1/2 배 되어 7 사이클 지연된 값」, 즉 「A7/2」가 출력되고 동시에 입력 단자(5)에는 「a14」의 데이터가 입력된다. 이것에 의하여 감산기(6)에서는 [(A7/2)-a14]가 계산된다. 또한 이 때, 레지스터(3n)의 출력에는 「입력 단자(1)에 입력된 값이 1/2 배 되어 14 사이클 지연된 값」, 즉 「A0/2」가 출력되어 있다. 이에 의하여 가산기(4h)에서는 [(A0/2)+{(A7/2)-a14}]가 계산되고, 절대치화 회로(7h)에서 [|(A0/2)+{(A7/2)-a14}|] 와 같이 절대치화 되어 누산 회로(8h)에 입력된다.Thus, in this device, the output of the input of data is disclosed for each cycle register 14 (3g) ", the value input to the input terminal (1) is one-half times the seventh cycle delayed value", or "A 7/2 "Is output and the data of" a 14 "is input to the input terminal 5 simultaneously. In this way the subtractor (6) [(A 7/ 2) -a 14] is calculated. At this time also, the output of the register (3n) has been "the value entered in the input terminal 1 is 1/2 times 14 cycles delayed value", or "A 0/2" output. In this way the adder (4h) [(A 0/ 2) + {(A 7/2) -a 14}] is calculated, an absolute value generating circuit (7h) in the [| (A 0/2) + {(A 7/2) -a 14} | is the absolute value as shown in screen] is input to the accumulation circuit (8h).

마찬가지로 하여 감산기(6)에서 계산된 [(A7/2)-a14] 값은, 가산기 4a 내지 (4g)에도 입력되어 있으므로, 각각 [(A14/2)+{(A7/2)-a14}], [(A13/2)+{(A7/2)-a14}], [(A12/2)+ {(A7/2)-a14}], [(A8/2)+{(A7/2)-a14}], [(A6/2)+{(A7/2)-a14}], [(A2/2)+{(A7/2)-a14}], [(A1/2)+{(A7/2)-a14}]가 계산된다. 이들의 값이 절대치화 회로(7a 내지 7g)에서 절대치화 되어, 누산 회로(8a 내지 8g)에 입력된다. 즉 이상을 정리하면, 14 사이클째에서 수식 2 의 우변의 제 1 항 값[(A*/2)+{(A7/2)-a14}] (단 * = 0, 1, 2, 6, 8, 12, 13, 14)가 누산 회로(8a 내지 8h)에 각각 입력되는 것이다.Similarly, the [(A 7/2) -a 14] value, the adder 4a to, it is also input to (4g), respectively [(A 14/2) + {(A 7/2) calculated by the subtractor (6) -a 14}], [(A 13/2) + {(A 7/2) -a 14}], [(A 12/2) + {(A 7/2) -a 14}], [( A 8/2) + {( A 7/2) -a 14}], [(A 6/2) + {(A 7/2) -a 14}], [(A 2/2) + {( a 7/2) -a 14} ], [(a 1/2) + {(a 7/2) -a 14}] is calculated. These values are absolute values in the absolute value circuits 7a to 7g and input to the accumulation circuits 8a to 8g. If that is In summary, the right side of claim 1, wherein the value of the formula 2 in the 14 th cycle [(A * / 2) + {(A 7/2) -a 14}] ( short * = 0, 1, 2, 6 , 8, 12, 13, 14 are input to the accumulation circuits 8a to 8h, respectively.

또한 15 내지 17 사이클째에서, 예를 들면 누산 회로(8h)에는 [(A1/2) + {(A8/2)-a15} = 「수식 2 의 Sum (-0.5, -0.5)」의 우변 제 2 항」] [(A2/2) + {(A9/2)-a16} = 「수식 2 의 Sum (-0.5, -0.5)」의 우변 제 8 항 (수식 2 에서는 ... 로서 생략되어 있다)」], [A3/2)+(A10/2)-a17}=「수식 2 의 Sum (-0.5, -0.5)의 우변 제 4 항 (수식 2 에서는 ... 로서 생략되어 있다)」]이 각각 입력되어 누산된다.Also in the 15th to 17th cycle, for example, the accumulation circuit (8h) is [(A 1/2) + {(A 8/2) -a 15} = "Formula 2 Sum (-0.5, -0.5)." right side second term "] [(a 2/2) + {(a 9/2) -a 16} = the" the right side of the equation 2 Sum (-0.5, -0.5). "8 (formula 2 below. are omitted as ...) "], [a 3/2) + (a 10/2) -a 17} = right side of claim 4, wherein the" in formula 2 Sum (-0.5, -0.5) (in the formula 2. Are omitted.]] Are input and are accumulated.

이것에 대하여, 18, 19 사이클째에서, 누산 회로(8h)에는 [{(A4/2) + {(A11/2)-a18}], [(A5/2) + {(A12/2)-a19}]가 입력되지만, 이들은 수식 2 의 Sum (-0.5, -0.5)의 우변에는 나타나 있지 않은 값이다. 그래서 이들 사이클에서는 단자(9)로부터의 인에블 제어 신호를 로우(오프)로 하여, 이들 필요 없는 데이터가 누산되지 않도록 한다. 또한, a18, a19는 더미 데이터이다.On the other hand, in at 18, 19 cycles, the accumulation circuit (8h) [{(A 4 /2) + {(A 11/2) -a 18}], [(A 5/2) + {(A 12/2) -a 19}] is, the input, which is a value that is not shown in the right side of the equation 2 Sum (-0.5, -0.5). Therefore, in these cycles, the enable control signal from the terminal 9 is set low (off) so that these unnecessary data are not accumulated. A 18 and a 19 are dummy data.

이하, 20 내지 23 사이클째에서는, 「수식 2 의 Sum (-0.5, -0.5)의 우변의 제 5 내지 8 항」의 값이 입력되고 이들 값이 그 때까지의 누산 결과에 누산된다. 24, 25 사이클째에는, 필요 없는 데이터가 입력되므로 단자(9)로부터의 인에블 제어 신호를 로우(오프)로 하여, 이들 필요 없는 데이터가 누산되지 않도록 한다. 26 내지 29 사이클째에서는, 「수식 2 의 Sum (-0.5, -0.5)의 우변의 제 9 내지 12항」의 값이 입력되고 이들 값이 그때까지의 누산 결과에 누산된다. 30, 31 사이클째에서는, 필요 없는 데이터가 입력되므로 단자(9)로부터의 인에이블 제어 신호를 로우(오프)로 하여, 이들 필요 없는 데이터가 누산되지 않도록 한다. 그리고 32 내지 35 사이클째에서는, 「수식 2 의 Sum (-0.5, -0.5)의 우변이 제 13 내재 16(최종)항」의 값이 입력되어 이들 값이 그때까지의 누산 결과에 누산된다. 이것에 의하여 누산 회로(8h)에는 35 사이클째의 종료 시에 Sum (-0.5, -0.5)의 값이 형성된다.Hereinafter, in the 20th to 23rd cycles, the values of "the fifth to eighth terms on the right side of Sum (-0.5, -0.5) of Equation 2" are inputted, and these values are accumulated in the accumulated result until then. In the 24th and 25th cycles, since unnecessary data is input, the enable control signal from the terminal 9 is set low (off) so that these unnecessary data are not accumulated. In the 26th to 29th cycles, the values of the "ninth to twelfth term on the right side of Sum (-0.5, -0.5) of equation (2)" are input and these values are accumulated in the accumulated result until then. In the 30th and 31st cycles, since unnecessary data is input, the enable control signal from the terminal 9 is set low (off) so that these unnecessary data are not accumulated. And in the 32nd-35th cycle, the value of "13th intrinsic 16 (final) term of the right side of Sum (-0.5, -0.5) of Formula 2" is input, and these values are accumulate | accumulated to the accumulation result up to that time. As a result, the summation circuit 8h forms a value of Sum (-0.5, -0.5) at the end of the 35th cycle.

즉, 상술의 장치에서, 14 내지 35 사이클 사이에 레지스터(3n)에서는, 입력단자(1)에 입력된 데이터 중의 제 2 도에 화살 표로서 표시되는 A0내지 A21값이 1/2 배로 되어 출력되고, 누산 회로(8h)에서는 그 내부의 사선 부분의 값에 의하여,That is, in the above-described apparatus, in the register 3n between 14 and 35 cycles, the values A 0 to A 21 indicated by arrows in the second figure of the data input to the input terminal 1 are halved. Outputted, and in the accumulation circuit 8h, by the value of the oblique portion therein,

Sum (-0.5, -0.5) = Σ|(AI/2)+{(AJ/2)-aK}|Sum (-0.5, -0.5) = Σ | (A I / 2) + {(A J / 2) -a K } |

(단, I, J, K 는 식 중에 표시되는 16 항의 값)(Where I, J and K are the values of 16 terms indicated in the formula)

이 누산된다. 또한 A4, A5, A10, A11, A16, A17, (18, 19, 24, 25, 30, 31 사이클째)의 값은 인에이블 제어 신호가 로우(오프)로 됨으로서 가산되지 않는다.Is accumulated. Also, the values of A 4 , A 5 , A 10 , A 11 , A 16 , A 17 , (cycles 18, 19, 24, 25, 30, 31) are not added because the enable control signal goes low (off). Do not.

또한 14 내지 35 사이클 사이에 레지스터(3m)로부터는, 입력 단자(1)에 입력된 데이터 중의 제 3 도에 화살표로서 표시되는 A1내지 A22값이 1/2 배 되어 출력되고, 누산 회로(8g)에서는 그 내부의 사선 부분의 값에 의하여, Sum (-0.5, 0) = Σ|(AI/2)+{(AJ/2)-aK}|In addition, between 14 and 35 cycles, from the register 3m, the values A 1 to A 22 indicated by arrows in FIG. 3 of the data input to the input terminal 1 are doubled and outputted. 8g), Sum (-0.5, 0) = Σ | (A I / 2) + {(A J / 2) -a K } |

(단, I, J, K는 식중에 나타내는 16 항의 값)(However, I, J, and K are 16 values shown in the formula.)

이 누산된다. 또한 A5, A6, A11, A12, A17, A18, (18, 19, 24, 25, 30, 31 사이클째)의 값은 인에이블 제어 신호가 로우(오프)로 됨으로서 가산되지 않는다.Is accumulated. In addition, the values of A 5 , A 6 , A 11 , A 12 , A 17 , A 18 , (cycles 18, 19, 24, 25, 30, 31) are not added because the enable control signal goes low (off). Do not.

다른 값에 대하여도, 마찬가지로 하여 누산 회로(8a 내지 8f)에서 계산이 행해진다. 또한 전체의 흐름도는 제 4 도에 도시된 바와 같다. 여기서 (1)은 입력 단자(1)에 입력되는 값, (2) 내지 (10)는 레지스터 3n. 3m, 3h, 3g, 3f, 3b, 3a 및 A 의 데이터가 1/2로 된 값, (11)는 입력 단자(5)에 입력되는 값, (12)는 입력 단자(9)에 입력되는 인에이블 제어 신호이다. 그리고 8 개의 누산 회로(8a 내지 8h)에서의 Sum(·,·)계산의 종료와 동시에, 입력 단자(10)에서 Sum (0, 0) = S값이 입력되고, 이들 9 개의 값이 비교 회로(11)에서 비교되고, 이들 중 최소로 되는 벡터가 검출된다.Similarly, calculations are made in other accumulation circuits 8a to 8f. The overall flow chart is also as shown in FIG. (1) is a value input to the input terminal (1), (2) to (10) is a register 3n. 3m, 3h, 3g, 3f, 3b, 3a and A are data whose values are 1/2, (11) is input to input terminal 5, (12) is input to input terminal 9 Able control signal. The Sum (0, 0) = S value is input from the input terminal 10 at the same time as the Sum (...,) calculation is completed in the eight accumulation circuits 8a to 8h, and these nine values are compared circuits. The comparison is made in (11), and the vector which is the minimum of these is detected.

이렇게 하여 상술한 장치에 의하면, 각 대응 상태에서의 공통하는 연산(감산기 6)을 선행하여 행함으로써 계산이 간략화되므로, 간단한 장치 구성으로 하프 화소 정밀도의 움직임 검출을 행할 수 있는 것이다.In this way, according to the apparatus described above, the calculation is simplified by performing a common operation (subtracter 6) in each corresponding state in advance, so that motion detection with half pixel precision can be performed with a simple apparatus configuration.

또한, 상술의 장치에서, 가산기(4a 내지 4h), 절대치화 회로(7a 내지 7h), 누산 회로(8a 내지 8h)의 부분은, 예를 들면 제 5 도와 같이 실현할 수 있다. 즉 상단의 가산기(4)에서 (AI/2)와 {(AJ/2)-aK}의 가산이 행해진다. 여기서 이 가산기(4)의 캐리아웃(부호 비트 : Co)가 [0]이면 이 가산치는 정이므로 그대로 하단의 가산기(81)에 입력된다. 한편, 가산기 (4)의 캐리아웃(Co)이 [1]일 때는 이 가산치는 부이다. 그래서 이 가산치를 인버터(71)로서 반전한 값이 스위치(72)로서 선택되고, 이 값이 하단의 가산기(81)에 공급되고, 스위치(73) 에서 선택된[1]의 값이 가산기(81)의 최하위측(캐리인 : Ci)에 입력된다. 이것에 의하여 가산기(4)에서의 값이 절대치화 되어 가산기 (81)에 입력된다.In addition, in the above-described apparatus, parts of the adders 4a to 4h, the absolute value circuits 7a to 7h, and the accumulator circuits 8a to 8h can be realized as, for example, the fifth diagram. That is, addition of (A I / 2) and {(A J / 2) -a K } is performed in the upper adder 4. If the carry-out (signal bit: Co) of the adder 4 is [0], this addition value is positive and is thus input to the lower adder 81 as it is. On the other hand, when the carryout Co of the adder 4 is [1], this addition value is negative. Thus, the value inverting this addition value as the inverter 71 is selected as the switch 72, and this value is supplied to the lower adder 81, and the value of [1] selected by the switch 73 is added to the adder 81. It is input to the lowest level (carrier: Ci) of. Thereby, the value in the adder 4 is made absolute and input into the adder 81. As shown in FIG.

또한 가산기(81)의 출력이 단위 지연 소자(레지스터)(82)를 거쳐 자신에 입력된다. 이와 동시에 이 레지스터(82)에 인에이블 단자 EN 가 설치되고, 인에이블 단자 EN 에 단자(9)에서의 인에이블 제어 신호가 공급된다. 이것에 의하여 상술의 필요 없는 값이 가산되지 않도록 누산이 행하여진다.The output of the adder 81 is input to itself via the unit delay element (register) 82. At the same time, the enable terminal EN is provided in this register 82, and the enable control signal at the terminal 9 is supplied to the enable terminal EN. Thereby, accumulation is performed so that the unnecessary value mentioned above may not be added.

또한, 이 계산 회로는 1 계통만을 나타낸 것이고, 상술하듯이 8 개 값의 계산을 행하는 경우에는, 이 계산 회로가 8 계통 병렬로 설치된다. 또는 계산 처리 시간에 여유가 있는 경우에는 8 중의 시분할 다중화에 의하여 계산 회로는 1 계통만으로 실현하는 것도 가능하다. 이 경우에는 회로 규모가 약 1/8 로 된다. 상술의 설명에서는 기준 데이터 블럭이 4 x 4 의 경우에 대하여 서술했지만, 이것은 임의의 n x m 으로 일반화 할 수 있는 것이다.In addition, this calculation circuit shows only one system, and when calculating 8 values as mentioned above, this calculation circuit is provided in 8 system parallels. Alternatively, when there is a margin in the calculation processing time, the calculation circuit can be realized by only one system by time division multiplexing in eight. In this case, the circuit scale becomes about 1/8. In the above description, the case where the reference data block is 4 x 4 has been described, but this can be generalized to any n x m.

본 발명에 의하면, 각 대응 상태사이에서의 공통하는 연산을 선행하여 행함으로써 계산이 간략화되므로, 간단한 장치 구성으로 하프 화소 정밀도의 움직임 검출을 행할 수 있게 된다.According to the present invention, since the calculation is simplified by performing a common operation between the corresponding states in advance, it is possible to perform motion detection with half pixel precision with a simple device configuration.

Claims (1)

소정 화소수로 구성된 수색(搜索)범위내의 화소와 상기 소정 화소수보다 작은 화소수로 구성되는 기준 데이터 블럭내의 화소를 그 배열 상태에 기초하여 비교할 때, 상기 수색 범위내에서 상기 블럭이 취할 수 있는 화소끼리의 대응 상태 마다 상기 블럭내의 각 화소와 상기 수색 범위내의 대응화소와의 차분 절대치의 합을 연산하는 연산 수단을 가지며, 상기 수색 범위내의 각 화소는 미리 상기 연산 수단에 입력되는 사이클이 설정도록도록 하고, 상기 사이클에 기초하여 상기 수색 범위내의 화소를 상기 연산수단에 입력하여, 순차 대응하는 상기 기준 데이터 블럭내의 화소와 상기 연산을 행하도록 하는 움직임 검출 장치로서,When a pixel in a search range composed of a predetermined number of pixels and a pixel in a reference data block composed of a number of pixels smaller than the predetermined number of pixels are compared based on the arrangement state, the block can be taken within the search range. Computing means for computing the sum of difference absolute values between the pixels in the block and the corresponding pixels in the search range for each corresponding state of the pixels, wherein each pixel in the search range has a cycle inputted to the computing means in advance. A motion detection device for inputting a pixel within the search range to the calculating means based on the cycle to sequentially perform the calculation with the pixels in the corresponding reference data block. 상기 수색 범위내에서 1 화소 이하의 움직임 상태를 검출할 때, 인접하는 화소간의 평균치와 상기 블럭내의 화소를 비교하도록 하고,When detecting a motion state of 1 pixel or less within the search range, the average value between adjacent pixels is compared with the pixels in the block, 상기 블럭내의 화소와의 각각의 대응 상태마다 상기 차분 절대치를 얻도록 하며,Obtain the absolute difference value for each corresponding state with the pixels in the block, 상기 각 대응 상태 사이에서의 공통되는 연산을 선행(先行)하여 실행하도록 하는 것을 특징으로 하는 움직임 검출 장치.And performing a common operation between the corresponding states in advance.
KR1019920001163A 1991-02-05 1992-01-28 Motion detecting device KR100247111B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP91-014310 1991-02-05
JP3014310A JP3038935B2 (en) 1991-02-05 1991-02-05 Motion detection device

Publications (2)

Publication Number Publication Date
KR920017478A KR920017478A (en) 1992-09-26
KR100247111B1 true KR100247111B1 (en) 2000-03-15

Family

ID=11857527

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019920001163A KR100247111B1 (en) 1991-02-05 1992-01-28 Motion detecting device

Country Status (2)

Country Link
JP (1) JP3038935B2 (en)
KR (1) KR100247111B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0594058A3 (en) * 1992-10-19 1994-05-18 Matsushita Electronics Corp Image processing apparatus
CN1190949C (en) * 2000-04-11 2005-02-23 皇家菲利浦电子有限公司 Determining degree of resemblance between data sample and interpolations of other data samples

Also Published As

Publication number Publication date
JPH04248683A (en) 1992-09-04
KR920017478A (en) 1992-09-26
JP3038935B2 (en) 2000-05-08

Similar Documents

Publication Publication Date Title
EP0497586A2 (en) Motion detection circuit
EP1074941B1 (en) Motion vector detection apparatus
KR930002613B1 (en) Image motion vector detector
US7133453B2 (en) Motion vector detection apparatus for performing checker-pattern subsampling with respect to pixel arrays
JPH06334980A (en) Motion vector detector for moving picture
KR930015828A (en) Moving vector detection method
KR950702083A (en) Moving vector detection method and device
US5793443A (en) Motion vector detection circuit
KR0166724B1 (en) Apparatus and method for estimating a half-pel motion vector
KR930006866B1 (en) Circuit for detecting a movement
KR100416444B1 (en) Motion vector selection method and image processing device performing this method
KR100247111B1 (en) Motion detecting device
JPH0287089A (en) Device for measuring contrast image of picture
JP3545004B2 (en) Arithmetic circuit
US5548665A (en) Vector correlation detecting circuit
JP2885039B2 (en) Motion vector detection circuit
US20030086497A1 (en) Motion vector detecting device improved in detection speed of motion vectors and system employing the same devices
KR970057917A (en) Macroblock Half-pixel Processing Unit
JP2901848B2 (en) Vector correlation detection circuit
KR0124580B1 (en) Moving estimation apparatus of auto-image stable system
KR100247880B1 (en) Motion detecting apparatus
JPH0993581A (en) Motion detector for moving image coder
JP3136616B2 (en) Motion detection device
JP2005006351A (en) Device for detecting motion vector, and method
JPH0223788A (en) Method and device for detecting panning

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20041124

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee