KR20010058887A - Apparatus for 3-d recursive motion vector estimation using the gradient of video signal - Google Patents

Apparatus for 3-d recursive motion vector estimation using the gradient of video signal Download PDF

Info

Publication number
KR20010058887A
KR20010058887A KR1019990066262A KR19990066262A KR20010058887A KR 20010058887 A KR20010058887 A KR 20010058887A KR 1019990066262 A KR1019990066262 A KR 1019990066262A KR 19990066262 A KR19990066262 A KR 19990066262A KR 20010058887 A KR20010058887 A KR 20010058887A
Authority
KR
South Korea
Prior art keywords
motion vector
difference signal
block
current block
frame
Prior art date
Application number
KR1019990066262A
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 KR1019990066262A priority Critical patent/KR20010058887A/en
Publication of KR20010058887A publication Critical patent/KR20010058887A/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
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

PURPOSE: A three dimensional recursive moving vector estimated apparatus is provided to improve an accuracy of a moving vector estimated by searching an initial moving vector and then outputting block video information of prior frame corresponding to a present block, or estimating a final moving vector including a moving degree of the present block and surrounding the block. CONSTITUTION: A moving vector storing unit(10) stores a moving vector of a block computed between moving vector about each block of a prior frame and a block of a present frame. And then, the moving vector storing unit(10) outputs the moving vector of a surrounding block neighboring the present block according to location information of the present block. An initial vector computing unit(20) receives the moving vector of the surrounding block outputted from the moving vector storing unit(10), and then outputs the initial moving vector for the present block. A moving compensation unit(30) compensates the inputted prior frame video information according to the initial moving vector, and outputs block video information of the prior frame corresponding to the present block. A frame difference signal compensation unit(40) calculates the difference between the video information of the present block and the block video information of the prior moving vector compensated, and outputs a frame difference signal. A horizontal/vertical difference signal compensation unit(60) inputs the video information of the present block, and outputs a horizontal difference signal between pixels in the present block. A moving vector compensation unit(50) inputs the frame difference signal, horizontal difference signal and the vertical difference signal, and compensates the moving vector for the present block, and then adds the result to the initial moving vector from the initial vector computing unit(20) to output a final moving vector and feedback the outputted final moving vector to the moving vector storing unit(10).

Description

비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치{APPARATUS FOR 3-D RECURSIVE MOTION VECTOR ESTIMATION USING THE GRADIENT OF VIDEO SIGNAL}A three-dimensional recursive motion vector estimator using gradient information of a video signal {APPARATUS FOR 3-D RECURSIVE MOTION VECTOR ESTIMATION USING THE GRADIENT OF VIDEO SIGNAL}

본 발명은 벡터 추정 장치에 관한 것으로, 특히 수평,수직 그리고 시간 방향으로 현재블록에 인접한 주위블록들의 움직임 벡터를 이용하여 초기 움직임 벡터를 구한 다음, 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보를 출력하거나, 현재블록과 주위블록의 움직임 정도를 비교하여 그 결과로 프레임차신호 및 초기 움직임 벡터를 선택적으로 출력하며 이에 따라 최종 움직임 벡터를 추정하는 비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치에 관한 것이다.The present invention relates to a vector estimating apparatus. In particular, an initial motion vector is obtained by using motion vectors of neighboring blocks adjacent to a current block in horizontal, vertical, and time directions, and then the input previous frame image information is obtained according to the initial motion vector. Compensates for outputting block image information of the previous frame corresponding to the current block, or compares the motion degree of the current block and neighboring blocks, and selectively outputs the frame difference signal and the initial motion vector as a result, and estimates the final motion vector accordingly. The present invention relates to a three-dimensional recursive motion vector estimating apparatus using gradient information of a video signal.

최근 가정용 티브이 수신기가 고화질, 고품질화 되면서 수신기에서는 두 개의 영상 프레임사이에서 발생하는 움직임을 추정하고, 이에 의해 얻어진 움직임 벡터 정보를 이용하여 움직임 보상형 디-인터레이싱(de-interlacing), 움직임 보상형 프레임 레이트(frame rate) 변환, 움직임 보상형 잡음 제거 등과 같은 화질 향상 처리를 수행하는데, 이를 위해서는 움직임 벡터의 추출을 위한 움직임 추정이 필수적으로 요구된다.Recently, as a TV receiver for home use has high quality and high quality, a receiver estimates a motion occurring between two video frames, and uses motion vector information obtained from the motion compensation de-interlacing and motion compensation frame. Image quality enhancement processes such as frame rate conversion and motion compensation noise reduction are performed. For this purpose, motion estimation for the extraction of motion vectors is required.

그리고, 움직임 추정 방식으로는 블록 정합 방식(BMA:Block Matching Algorithm)과 주파수 영역에서 움직임을 추정하는 방식, 그리고 영상신호의 수평,수직,시간축 방향으로의 차신호(gradient) 정보를 이용하여 움직임을 추정하는 방식 등이 있다.As a motion estimation method, a block matching method (BMA), a motion estimation method in a frequency domain, and a motion signal using gradient information in the horizontal, vertical, and time axis directions of a video signal are used. There is a method of estimating.

여기서, 차신호(gradient) 정보를 이용한 방식은 다시 화소 순환(pel-recursive)방식과 광유출(optical flow)방식으로 분류할 수 있다.Here, a method using gradient information may be further classified into a pel-recursive method and an optical flow method.

이 방식들은 블록 정합 방식에 비해서 실제 움직임을 잘 표현할 수 있으므로 특히 티브이 수신기에서 수행하는 움직임 보상형 디-인터레이싱(de-interlacing) 또는 움직임 보상형 프레임 레이트(frame rate) 변환 등에 적용이 가능한 반면, 잡음에 쉽게 영향을 받고 큰 움직임이나 전역 움직임(global motion)에 잘 적응하지 못하는 단점이 있다.Since these methods can represent actual motion better than the block matching method, they are particularly applicable to motion compensated de-interlacing or motion compensated frame rate conversion performed by a TV receiver. It has the disadvantage of being easily affected by noise and not adapting well to large motions or global motions.

또한, 이 방식들은 반복적인 연산을 필요로 하므로 움직임 벡터를 추정하기 위해서는 높은 계산량을 요구하는데, 이의 개선을 위해 영상신호의 차신호(gradient) 정보를 이용한 움직임 추정 방식이 제시되었다.In addition, since these methods require repetitive operations, a high computational amount is required for estimating a motion vector, and a motion estimation method using gradient information of an image signal has been proposed for the improvement thereof.

도1은 종래 영상신호의 차신호 정보를 이용한 움직임 추정 장치의 구성을 보인 블록도로서, 이에 도시된 바와 같이 현재블록의 영상정보 B(Z,n)와 현재블록과 동일한 위치에 있는 이전 프레임의 영상정보 B(Z,n-1)의 차를 계산하여 그 결과를 프레임차신호 FD(Z,n)로 출력하는 프레임차신호 산출부(1)와; 현재블록의 영상정보 B(Z,n)를 입력받아 현재블록 내의 화소들간의 수평 차신호 SDX(Z,n) 및 수직 차신호 SDY(Z,n)를 출력하는 수평/수직차신호 산출부(2)와; 상기 프레임 차신호 FD(Z,n) 및 수평 차신호 SDX(Z,n)와 수직 차신호 SDY(Z,n)를 입력받아 현재블록에 대한 움직임 벡터(Z,n)를 출력하는 움직임벡터 산출부(3)로 구성되며, 여기서 Z는 현재블록의 위치를 나타내는 값으로 Z=(x,y)로 표현할 수 있고, n은 현재블록이 포함된 프레임 번호이다.FIG. 1 is a block diagram showing a configuration of a motion estimation apparatus using difference signal information of a conventional video signal. As shown in FIG. A frame difference signal calculating section 1 for calculating the difference between the image information B (Z, n-1) and outputting the result as the frame difference signal FD (Z, n); Calculate horizontal / vertical difference signal that receives image information B (Z, n) of current block and outputs horizontal difference signal SD X (Z, n) and vertical difference signal SD Y (Z, n) between pixels in current block Part 2; A motion vector for the current block by receiving the frame difference signal FD (Z, n) and the horizontal difference signal SD X (Z, n) and the vertical difference signal SD Y (Z, n) It consists of a motion vector calculation unit (3) for outputting (Z, n), where Z is a value representing the position of the current block can be expressed as Z = (x, y), n is a frame containing the current block Number.

이와 같이 구성된 종래 장치의 동작을 설명한다.The operation of the conventional apparatus configured as described above will be described.

1차원 신호에 대하여 고려할 경우, 프레임차신호 산출부(1)는 현재블록의 영상정보 B(Z,n)와 이에 대응하는 이전 프레임의 영상정보 B(Z,n-1)를 입력받아 현재블록의 영상정보 B(Z,n)에서 이전 프레임의 영상정보 B(Z,n-1)를 감산하여 프레임차신호 FD(Z,n)를 출력한다.When considering the one-dimensional signal, the frame difference signal calculator 1 receives the image information B (Z, n) of the current block and the image information B (Z, n-1) of the previous frame corresponding to the current block. Subtracts the video information B (Z, n-1) of the previous frame from the video information B (Z, n), and outputs the frame difference signal FD (Z, n).

한편, 수평/수직차신호 산출부(2)는 상기 현재블록의 영상정보 B(Z,n)를 입력받아 현재블록 내의 화소들간의 수평 차신호 SDX(Z,n) 및 수직 차신호 SDY(Z,n)를 출력하는데, 이는 상기 프레임차신호 FD(Z,n)와 함께 움직임벡터 산출부(3)로 입력되어 현재블록에 대한 움직임 벡터(Z,n)가 출력된다.Meanwhile, the horizontal / vertical difference signal calculator 2 receives the image information B (Z, n) of the current block and receives the horizontal difference signal SD X (Z, n) and the vertical difference signal SD Y between the pixels in the current block. (Z, n) is output, which is input to the motion vector calculating unit 3 together with the frame difference signal FD (Z, n) and is a motion vector for the current block. (Z, n) is output.

여기서, 도2와 같이 한 프레임 기간동안 X축으로 dx 만큼의 움직임이 발생한 경우, 위치 x에서의 프레임차신호 FD(Z,n)는 다음의 수학식1과 같이 표현된다.Here, as shown in FIG. 2, when dx motion occurs on the X axis during one frame period, the frame difference signal FD (Z, n) at the position x is expressed by Equation 1 below.

여기서, S(x,n)는 현재의 프레임의 위치 x에 존재하는 화소의 밝기값이고, S(x,n-1)는 이전의 프레임의 위치 x에 존재하는 회소의 밝기값이다.Here, S (x, n) is the brightness value of the pixel existing at the position x of the current frame, and S (x, n-1) is the brightness value of the pixel existing at the position x of the previous frame.

그리고, 상기 수학식1에서 S(x+dx,n)를 테일러(Taylor) 전개하면,Then, in the equation (1) S (x + dx, n) Taylor expansion,

와 같이 된다.Becomes

상기 수학식2에서 고차항(h.o.t: higher order term)을 무시하면 다음의 수학식3과 같이 된다.If the higher order term (h.o.t) is ignored in Equation 2, Equation 3 is obtained.

그리고, 상기 수학식3에서 X축(수평) 방향으로의 움직임은 프레임차신호 FD(Z,n)와 X축 방향의 기울기(∂S(x,n)/∂x)의 비로 표시할 수 있음을 알 수 있다.In addition, in Equation 3, the movement in the X-axis (horizontal) direction can be expressed by the ratio of the frame difference signal FD (Z, n) and the slope (∂S (x, n) / ∂x) in the X-axis direction. It can be seen.

결국, 상기 수학식3의 결과에 의해 2차원 영상신호에 대한 수평,수직 움직임은 다음의 수학식4와 같이 표시할 수 있다.As a result, the horizontal and vertical motions of the 2D video signal may be expressed as in Equation 4 as a result of Equation 3 above.

그리고, 상기 수학식4의 결과를 화소 단위가 아닌 블록단위로 확장하면, 즉 화소 단위로 움직임 벡터가 할당되는 것이 아니라 블록 당 하나의 움직임 벡터를 할당하면 다음의 수학식5로 근사적을 표현할 수 있다.If the result of Equation 4 is extended to a block unit instead of a pixel unit, that is, a motion vector is assigned to each block rather than a motion vector is allocated to a pixel unit, the following Equation 5 can be approximated. .

여기서, Z는 화소위치를 나타내는 벡터로 Z=(x,y)로 표현되고, SDX(Z,n)와 SDY(Z,n)는 각각 n번째 프레임의 Z위치에서의 수평 및 수직방향 차신호(gradient)를 나타내며, 연산자 sign(·)는 입력신호의 부호(sign)를 검출하는 연산을 수행하고, MA는 움직임 영역(Moving Area)을 나타낸다.Here, Z is a vector representing a pixel position represented by Z = (x, y), and SD X (Z, n) and SD Y (Z, n) are horizontal and vertical directions at the Z position of the nth frame, respectively. Indicate a gradient signal, operator sign (·) performs an operation of detecting a sign of an input signal, and MA represents a moving area.

그리고, 상기 수학식5의 결과를 도3을 참조하여 설명하면, 도3의 (a)와 같이 프레임 S(x,1)에서 프레임 S(x,2) 사이에 객체(object)가 오른쪽으로 2픽셀(pixel) 움직인 경우, 동일한 위치에 있는 두 프레임(S(x,1),S(x,2)) 사이의 화소값의 차이인 프레인차신호 FD는 도3의 (b)와 같이,The result of Equation 5 will be described with reference to FIG. 3. As shown in (a) of FIG. 3, an object is right 2 between frames S (x, 1) and S (x, 2). When the pixel is moved, the plane difference signal FD, which is a difference between pixel values between two frames S (x, 1) and S (x, 2) at the same position, is shown in FIG.

에 의해 결정된다.Determined by

여기서, 프레임 S(x,1)에서의 수평방향 차신호 SD(x,1)및 프레임 S(x,2)에서의 수평방향 차신호 SD(x,2)는 각각 도3의 (c) 내지 (d)와 같이,Here, the horizontal difference signal SD (x, 1) in the frame S (x, 1) and the horizontal difference signal SD (x, 2) in the frame S (x, 2) are respectively shown in FIGS. as in (d),

에 의해 결정된다.Determined by

그리고, 도3의 (e)는 프레임차신호 FD의 부호(sign) 값인 sFD를 나타낸 것이고, 도3의 (f)는 상기 수평방향 차신호 SD(x,1)와 수평방향 차신호 SD(x,2)의 합의 부호(sign) 값인 sSD를 나타낸 것이며, 상기 sFD는 프레임차신호 FD가 기준값이하로 내려갈 때 부(-)의 값을, 기준값이상으로 올라갈 때 정(+)의 값을 갖고, 마찬가지로sSD는 수평방향 차신호(SD(x,1),SD(x,2))의 합이 기준값이하로 내려갈 때 부(-)의 값을, 기준값이상으로 올라갈 때 정(+)의 값을 갖는다.3 (e) shows sFD which is a sign value of the frame difference signal FD, and FIG. 3 (f) shows the horizontal difference signal SD (x, 1) and the horizontal difference signal SD (x). SSD, which is the sign value of the sum of (2), has a negative value when the frame difference signal FD falls below the reference value, and a positive value when the frame difference signal FD falls below the reference value. Similarly, the sSD sets a negative value when the sum of the horizontal difference signals SD (x, 1) and SD (x, 2) falls below the reference value, and a positive value when it goes above the reference value. Have

이 결과로부터 움직임의 크기는 다음의 식과 같이,From this result, the magnitude of the motion is given by

로 표현되어, 움직임 영역에 있는 프레임차신호 FD의 절대값의 합과 수평방향 차신호(SD(x,1),SD(x,2))의 절대값의 합의 비로 표현할 수 있다.The sum of the absolute value of the frame difference signal FD in the motion region and the sum of the absolute values of the horizontal difference signals SD (x, 1) and SD (x, 2) can be expressed.

즉, 움직임 방향은 도3의 (g)와 같이 sFD와 sSD의 부호가 같으면 왼쪽으로, 부호가 반대이면 오른쪽으로 움직임을 의미한다.That is, the direction of movement means moving to the left if the signs of sFD and sSD are the same as shown in FIG. 3 (g), and moving to the right if the signs are opposite.

따라서, 프레임차신호 FD 및 프레임 S(x,2)에서의 수평방향 차신호 SD(x,2)와 이들의 부호값을 상기 수학식5에 대입하면 객체가 한 프레임 기간 동안 오른쪽으로 2픽셀 움직였음을 추정할 수 있다.Therefore, if the horizontal difference signals SD (x, 2) and their code values in the frame difference signals FD and frame S (x, 2) are substituted into Equation 5, the object moves two pixels to the right for one frame period. Can be estimated.

그리고, 상기 수학식5로 표현되는 방식은 블록 당 움직임 벡터를 구하기 위해서 필요한 주 연산이 수평 차신호 SDX, 수직 차신호 SDY, 그리고 프레임차신호 FD를 구하는 것이므로 계산량이 적다.The method represented by Equation 5 has a small amount of calculation since the main operations required to obtain a motion vector per block are to obtain a horizontal difference signal SD X , a vertical difference signal SD Y , and a frame difference signal FD.

그러나, 상기에서와 같이 종래의 기술에 있어서 영상신호의 차신호 정보를 이용하여 움직임 벡터를 추정할 경우, 빠른 움직임과 전역 움직임이 있는 영역에서는 현재블록과 주위블록 간에 움직임 차가 많이 나게 되어 움직임 벡터 추정의 정확도가 떨어지는 문제점이 있었다.However, when the motion vector is estimated using the difference signal information of the video signal in the prior art as described above, the motion vector estimation is increased because the motion difference between the current block and the neighboring blocks increases in the region having fast motion and global motion. There was a problem of falling accuracy.

따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창출한 것으로, 수평,수직 그리고 시간 방향으로 현재블록에 인접한 주위블록들의 움직임 벡터를 이용하여 초기 움직임 벡터를 구한 다음, 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보를 출력하거나, 현재블록과 주위블록의 움직임 정도를 비교하여 그 결과로 프레임차신호 및 초기 움직임 벡터를 선택적으로 출력하며 이에 따라 최종 움직임 벡터를 추정하도록 하는 비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치를 제공함에 그 목적이 있다.Accordingly, the present invention was created to solve the above-mentioned conventional problems, and obtains an initial motion vector using motion vectors of neighboring blocks adjacent to the current block in the horizontal, vertical and time directions, and then inputs the previous frame image. Compensate the information according to the initial motion vector to output block image information of the previous frame corresponding to the current block, or compare the motion degree of the current block and neighboring blocks and selectively output the frame difference signal and the initial motion vector as a result. Accordingly, an object of the present invention is to provide a 3D recursive motion vector estimator using gradient information of a video signal to estimate a final motion vector.

도1은 종래 영상신호의 차신호 정보를 이용한 움직임 추정 장치의 구성을 보인 블록도.1 is a block diagram showing a configuration of a motion estimation apparatus using difference signal information of a conventional video signal.

도2는 도1에서, 움직임 추정의 개념을 나타낸 개념도.2 is a conceptual diagram showing the concept of motion estimation in FIG.

도3은 도1에서, 움직임 추정의 실시예를 보인 예시도.Figure 3 is an exemplary view showing an embodiment of motion estimation in Figure 1;

도4는 본 발명 비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치의 일실시예의 구성을 보인 블록도.Figure 4 is a block diagram showing the configuration of an embodiment of a three-dimensional regression motion vector estimating apparatus using the tilt information of the video signal of the present invention.

도5는 본 발명 비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치의 다른 실시예의 구성을 보인 블록도.5 is a block diagram showing the configuration of another embodiment of a three-dimensional regression type motion vector estimating apparatus using the tilt information of the video signal of the present invention.

도6은 도5에서, 초기 움직임 벡터의 산출에 사용되는 주위블록들의 예를 나타낸 예시도.FIG. 6 is an exemplary diagram showing an example of neighboring blocks used for calculating an initial motion vector in FIG. 5; FIG.

도7은 "탁구" 영상 시퀀스에 대하여 종래 및 본 발명의 일실실예에 의해 추정된 움직임 벡터를 이용하여 이동 보상한 결과를 보인 그래프도.Fig. 7 is a graph showing the results of motion compensation on the "table tennis" image sequence using motion vectors estimated by conventional and exemplary embodiments of the present invention.

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

10 : 움직임 벡터 저장부 20 : 초기 벡터 산출부10: motion vector storage unit 20: initial vector calculation unit

30 : 움직임 보상부 40,70 : 프레임차신호 산출부30: motion compensation unit 40, 70: frame difference signal calculation unit

50 : 움직임 벡터 산출부 60 : 수평/수직 차신호 산출부50: motion vector calculator 60: horizontal / vertical difference signal calculator

80 : 왜곡 비교부 90 : 선택기80: distortion comparison unit 90: selector

100 : 벡터 선택기100: vector selector

이와 같은 목적을 달성하기 위한 본 발명은 이전 프레임의 각 블록에 대한 움직임 벡터와 현재 프레임의 블록 중 움직임 벡터가 산출된 블록의 움직임 벡터를 각각 저장한 다음, 현재블록의 위치 정보에 따라 현재블록에 이웃한 주위블록의 움직임 벡터를 출력하는 움직임벡터 저장부와; 상기 움직임벡터 저장부에서 출력한 주위블록의 움직임 벡터를 입력받아 현재블록에 적용할 초기 움직임 벡터를 출력하는 초기벡터 산출부와; 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보를 출력하는 움직임 보상부와; 현재블록의 영상정보와 움직임 보상된 이전 프레임의 블록 영상정보의 차를 계산하여 프레임차신호를 출력하는 프레임차신호 산출부와; 현재블록의 영상정보를 입력받아 현재블록 내의 화소들간의 수평 차신호 및 수직 차신호를 출력하는 수평/수직차신호 산출부와; 상기 프레임차신호 및 수평차신호와 수직차신호를 입력받아 현재블록에 대한 움직임 벡터를 구한 다음, 그 결과를 상기 초기벡터 산출부의 초기 움직임 벡터와 가산하여 최종 움직임 벡터를 출력함과 아울러 출력된 최종 움직임 벡터를 상기 움직임 벡터 저장부로 궤환하는 움직임벡터 산출부를 포함하여 구성한 것을 특징으로 한다.In order to achieve the above object, the present invention stores a motion vector of each block of a previous frame and a motion vector of a block of which a motion vector is calculated among blocks of a current frame, and then stores the motion vector of the current frame according to the position information of the current block. A motion vector storage unit for outputting motion vectors of neighboring neighboring blocks; An initial vector calculator for receiving a motion vector of a neighboring block output from the motion vector storage unit and outputting an initial motion vector to be applied to a current block; A motion compensator for compensating input previous frame image information according to the initial motion vector and outputting block image information of a previous frame corresponding to a current block; A frame difference signal calculating unit configured to calculate a difference between the image information of the current block and the block image information of the previous frame with motion compensation and output a frame difference signal; A horizontal / vertical difference signal calculator for receiving image information of the current block and outputting a horizontal difference signal and a vertical difference signal between pixels in the current block; The motion vector for the current block is obtained by receiving the frame difference signal, the horizontal difference signal and the vertical difference signal, and the result is added to the initial motion vector of the initial vector calculator to output a final motion vector and the final output And a motion vector calculator for returning a motion vector to the motion vector storage unit.

또한, 이전 프레임의 각 블록에 대한 움직임 벡터와 현재 프레임의 블록 중 움직임 벡터가 산출된 블록의 움직임 벡터를 각각 저장한 다음, 현재블록의 위치 정보에 따라 현재블록에 이웃한 주위블록의 움직임 벡터를 출력하는 움직임벡터 저장부와; 상기 움직임벡터 저장부에서 출력한 주위블록의 움직임 벡터를 입력받아 현재블록에 적용할 초기 움직임 벡터를 출력하는 초기벡터 산출부와; 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보를 출력하는 움직임 보상부와; 현재블록의 영상정보와 상기 움직임 보상부의 이전 프레임의 블록 영상정보의 차를 계산하여 제1 프레임차신호를 출력하는 제1 프레임차신호 산출부와; 현재블록의 영상정보와 현재블록과 동일한 위치에 있는 이전 프레임의 블록 영상의 차를 계산하여 제2 프레임차신호를 출력하는 제2 프레임차신호 산출부와; 상기 각 프레임차신호 산출부의 출력의 에너지 레벨을 비교하여 그 결과에 따라 제어신호를 출력하는 왜곡 비교부와; 상기 왜곡 비교부의 제어신호에 따라 상기 프레임차신호를 선택하는 선택기와; 상기 왜곡 비교부의 제어신호에 따라 상기 초기 벡터 산출부의 초기 움직임 벡터 혹은 영 벡터를 선택하는 벡터 선택기와; 현재블록의 영상정보를 입력받아 현재블록 내의 화소들간의 수평 차신호 및 수직 차신호를 출력하는 수평/수직차신호 산출부와; 상기 선택기에서 선택된 프레임차신호 및 수평/수직차신호 산출부의 수평차신호와 수직차신호를 입력받아 현재블록에 대한 움직임 벡터를 구한 다음, 그 결과에 상기 벡터 선택기의 출력을 가산하여 최종 움직임 벡터를 출력함과 아울러 출력된 최종 움직임 벡터를 상기 움직임 벡터 저장부로 궤환하는 움직임벡터 산출부를 포함하여 구성한 것을 특징으로 한다.Also, the motion vector of each block of the previous frame and the motion vector of the block from which the motion vector is calculated among the blocks of the current frame are respectively stored, and then the motion vectors of neighboring blocks neighboring the current block are determined according to the position information of the current block. A motion vector storage unit for outputting; An initial vector calculator for receiving a motion vector of a neighboring block output from the motion vector storage unit and outputting an initial motion vector to be applied to a current block; A motion compensator for compensating input previous frame image information according to the initial motion vector and outputting block image information of a previous frame corresponding to a current block; A first frame difference signal calculator for calculating a difference between the image information of the current block and the block image information of the previous frame of the motion compensator and outputting a first frame difference signal; A second frame difference signal calculator for calculating a difference between the image information of the current block and the block image of the previous frame at the same position as the current block and outputting a second frame difference signal; A distortion comparing unit for comparing the energy levels of the outputs of the respective frame difference signal calculating units and outputting a control signal according to the result; A selector for selecting the frame difference signal according to the control signal of the distortion comparison unit; A vector selector for selecting an initial motion vector or a zero vector of the initial vector calculator according to a control signal of the distortion comparator; A horizontal / vertical difference signal calculator for receiving image information of the current block and outputting a horizontal difference signal and a vertical difference signal between pixels in the current block; The motion vector for the current block is obtained by receiving the frame difference signal selected by the selector and the horizontal difference signal and the vertical difference signal of the horizontal / vertical difference signal calculating unit, and then the output of the vector selector is added to the final motion vector. And a motion vector calculating unit for returning the output box and the outputted final motion vector to the motion vector storage unit.

이하, 본 발명에 따른 일실시예를 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.Hereinafter, an embodiment according to the present invention will be described in detail with reference to the accompanying drawings.

도4는 본 발명 비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치의 구성을 보인 블록도로서, 이에 도시한 바와 같이 이전 프레임의 각 블록에 대한 움직임 벡터(Z,n)와 현재 프레임의 블록 중 움직임 벡터(Z,n)가 산출된 블록의 움직임 벡터(Z,n)를 각각 저장한 다음, 현재블록의 위치 정보(Z)에 따라 현재블록에 이웃한 주위블록의 움직임 벡터(Z,n)를 출력하는 움직임벡터 저장부(10)와; 상기 움직임벡터 저장부(10)에서 출력한 주위블록의 움직임 벡터(Z,n)를 입력받아 현재블록에 적용할 초기 움직임 벡터 (Z,n)를 출력하는 초기벡터 산출부(20)와; 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터 (Z,n)에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보 B(Z-,n-1)를 출력하는 움직임 보상부(30)와; 현재블록의 영상정보 B(Z,n)와 움직임 보상된 이전 프레임의 블록 영상정보 B(Z-,n-1)를 입력받아 상기 현재블록의 영상정보 B(Z,n)에서 상기 이전 프레임의 블록 영상정보 B(Z-,n-1)를 감산하여 프레임차신호 FD(Z,n)를 출력하는 프레임차신호 산출부(40)와; 현재블록의 영상정보 B(Z,n)를 입력받아 현재블록 내의 화소들간의 수평 차신호 SDX(Z,n) 및 수직 차신호 SDY(Z,n)를 출력하는 수평/수직차신호 산출부(60)와; 상기 프레임차신호 FD(Z,n) 및 수평차신호 SDX(Z,n)와 수직차신호 SDY(Z,n)를 입력받아 현재블록에 대한 움직임 벡터(Z,n)를 구한 다음, 그 결과를 상기 초기벡터 산출부(20)의 초기 움직임 벡터 (Z,n)와 가산하여 최종 움직임 벡터(Z,n)를 출력함과 아울러 출력된 최종 움직임 벡터(Z,n)를 상기 움직임 벡터 저장부(10)로 궤환하는 움직임벡터 산출부(50)로 구성하며, 이와 같이 구성한 본 발명에 따른 일실시예의 동작 및 작용을 첨부한 도면을 참조하여 상세히 설명한다.4 is a block diagram showing the configuration of a three-dimensional recursive motion vector estimating apparatus using gradient information of a video signal of the present invention. As shown therein, a motion vector of each block of a previous frame is shown. Motion vector among blocks of (Z, n) and current frame Motion vector of block from which (Z, n) is calculated After storing (Z, n), respectively, the motion vector of neighboring blocks adjacent to the current block according to the position information (Z) of the current block A motion vector storage unit 10 for outputting (Z, n); Motion vectors of surrounding blocks output from the motion vector storage unit 10 An initial vector calculator 20 for receiving (Z, n) and outputting an initial motion vector (Z, n) to be applied to the current block; A motion compensation unit 30 for compensating the input previous frame image information according to the initial motion vector (Z, n) and outputting block image information B (Z-, n-1) of the previous frame corresponding to the current block; ; The image information B (Z, n) of the current block and the block image information B (Z-, n-1) of the previous frame, which are motion compensated, are input, and the image information B (Z, n) of the current block is received. A frame difference signal calculator 40 for outputting the frame difference signal FD (Z, n) by subtracting the block image information B (Z-, n-1); Calculate horizontal / vertical difference signal that receives image information B (Z, n) of current block and outputs horizontal difference signal SD X (Z, n) and vertical difference signal SD Y (Z, n) between pixels in current block Section 60; A motion vector for the current block by receiving the frame difference signal FD (Z, n) and the horizontal difference signal SD X (Z, n) and the vertical difference signal SD Y (Z, n) After obtaining (Z, n), the result is added to the initial motion vector (Z, n) of the initial vector calculation unit 20 to obtain a final motion vector. Outputs (Z, n) and outputs the final motion vector With reference to the accompanying drawings, the operation and operation of an embodiment according to the present invention constituted by a motion vector calculation unit 50 for returning (Z, n) to the motion vector storage unit 10. do.

도6은 초기 움직임 벡터 (Z,n)의 산출에 사용되는 주위블록들의 예를 나타내었는데, 여기서 현재블록의 초기움직임 벡터 산출에 이용되는 블록들은 현재블록의 인접한 이전 프레임의 블록들과 이미 움직임 벡터(Z,n)가 구해진 현재 프레임의 이전 블록들이다.Fig. 6 shows an example of neighboring blocks used for calculating the initial motion vector (Z, n), where the blocks used for calculating the initial motion vector of the current block are already blocks of the previous frame of the current block and the motion vector. (Z, n) are the previous blocks of the current frame obtained.

일반적으로, 현재블록과 주위블록들이 높은 연관성을 갖고 있으므로, 인접한 블록들의 움직임 벡터(Z,n)를 이용하여 구한 초기 움직임 벡터 (Z,n)는 현재블록의 실제 움직임 벡터(Z,n)와 유사할 가능성이 많게 된다.In general, since the current block and neighboring blocks have a high correlation, the motion vector of adjacent blocks The initial motion vector (Z, n) obtained using (Z, n) is the actual motion vector of the current block. It is likely to be similar to (Z, n).

이에 따라, 움직임벡터 저장부(10)는 이전 프레임의 각 블록에 대한 움직임 벡터(Z,n) 및 현재 프레임의 블록 중 움직임 벡터(Z,n)가 산출된 블록의 움직임 벡터(Z,n)를 저장한 다음, 현재블록의 위치 정보(Z)에 따라 현재블록에이웃한 주위블록의 움직임 벡터(Z,n)를 초기벡터 산출부(20)로 출력한다.Accordingly, the motion vector storage unit 10 moves a motion vector for each block of the previous frame. Motion vector among blocks of (Z, n) and current frame Motion vector of block from which (Z, n) is calculated After storing (Z, n), the motion vector of the neighboring block neighboring the current block according to the position information (Z) of the current block (Z, n) is output to the initial vector calculator 20.

그러면, 상기 초기벡터 산출부(20)는 상기 움직임벡터 저장부(10)에서 출력한 주위블록의 움직임 벡터(Z,n)를 입력받아 현재블록에 적용할 초기 움직임 벡터 (Z,n)를 출력하는데, 여기서 n은 현재블록이 포함된 프레임 번호이고, Z는 현재블록의 위치를 나타내는 값으로 Z=(x,y)로 표현할 수 있다.Then, the initial vector calculator 20 is a motion vector of the neighboring block output from the motion vector storage unit 10 It receives (Z, n) and outputs an initial motion vector (Z, n) to be applied to the current block, where n is a frame number including the current block and Z is a value indicating the position of the current block. x, y).

그리고, 상기 초기 움직임 벡터 (Z,n)는 일반적으로 주위 벡터들의 평균값 혹은 중간값 등을 고려하여 구할 수 있다.In addition, the initial motion vector (Z, n) may be generally obtained by considering an average value or a median value of surrounding vectors.

그 다음, 움직임 보상부(30)는 상기 초기 움직임 벡터 (Z,n)를 이용하여 이전 프레임 영상을 이동보상 함으로써, 현재블록에 대응하는 이전 프레임의 블록 영상정보 B(Z-,n-1)를 출력하고, 프레임차신호 산출부(40)는 현재블록의 영상정보 B(Z,n)와 이전 프레임의 블록 영상정보 B(Z-,n-1)를 입력받아 상기 현재블록의 영상정보 B(Z,n)에서 이전 프레임의 블록 영상정보 B(Z-,n-1)를 감산하여 프레임차신호 FD(Z,n)를 출력한다.Next, the motion compensator 30 compensates for the previous frame image by using the initial motion vector (Z, n), thereby providing block image information B (Z-, n-1) of the previous frame corresponding to the current block. The frame difference signal calculator 40 receives the image information B (Z, n) of the current block and the block image information B (Z-, n-1) of the previous frame and outputs the image information B of the current block. The frame difference signal FD (Z, n) is output by subtracting the block image information B (Z−, n−1) of the previous frame from (Z, n).

한편, 수평/수직차신호 산출부(60)는 현재블록의 영상정보 B(Z,n)를 입력받아 현재블록 내의 화소들간의 수평 차신호 SDX(Z,n) 및 수직 차신호 SDY(Z,n)를 출력하는데, 상기 수평 차신호 SDX(Z,n) 및 수직 차신호 SDY(Z,n)는 다음의 수학식6에 의해 계산된다.Meanwhile, the horizontal / vertical difference signal calculator 60 receives the image information B (Z, n) of the current block and receives the horizontal difference signal SD X (Z, n) and the vertical difference signal SD Y ( Z, n), wherein the horizontal difference signal SD X (Z, n) and the vertical difference signal SD Y (Z, n) are calculated by the following equation (6).

그러면, 움직임벡터 산출부(50)는 상기 프레임 차신호 FD(Z,n) 및 수평 차신호 SDX(Z,n)와 수직 차신호 SDY(Z,n)를 입력받아 상기 수학식5에 따라 연산을 수행하여 현재블록에 대한 움직임 벡터(Z,n)를 구한다.Then, the motion vector calculating unit 50 receives the frame difference signal FD (Z, n) and the horizontal difference signal SD X (Z, n) and the vertical difference signal SD Y (Z, n) in equation (5). Motion vector for the current block Find (Z, n).

그리고, 그 움직임 벡터를 상기 초기벡터 산출부(20)의 초기 움직임 벡터 (Z,n)와 가산하여 최종 움직임 벡터(Z,n)를 출력한다.The motion vector is added to the initial motion vector (Z, n) of the initial vector calculator 20 to obtain a final motion vector. Outputs (Z, n)

또한, 상기 최종 움직임 벡터(Z,n)는 움직임 벡터 저장부(10)로 궤환되어 저장되는데, 이는 다음 블록에 대한 초기 움직임 벡터(Z,n)의 결정에 사용된다.Also, the final motion vector (Z, n) is fed back to the motion vector storage unit 10 and stored, which is used to determine the initial motion vector (Z, n) for the next block.

한편, 도5는 본 발명 비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치의 다른 실시예의 구성을 보인 블록도로서, 이에 도시한 바와 같이 이전 프레임의 각 블록에 대한 움직임 벡터(Z,n)와 현재 프레임의 블록 중 움직임 벡터(Z,n)가 산출된 블록의 움직임 벡터(Z,n)를 각각 저장한 다음, 현재블록의 위치 정보(Z)에 따라 현재블록에 이웃한 주위블록의 움직임 벡터(Z,n)를 출력하는 움직임벡터 저장부(10)와; 상기 움직임벡터 저장부(10)에서 출력한 주위블록의 움직임 벡터(Z,n)를 입력받아 현재블록에 적용할 초기 움직임 벡터 (Z,n)를 출력하는 초기벡터 산출부(20)와; 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터 (Z,n)에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보 B(Z-,n-1)를 출력하는 움직임 보상부(30)와; 현재블록의 영상정보 B(Z,n)와 상기 움직임 보상부(30)의 이전 프레임의 블록 영상정보 B(Z-,n-1)의 차를 계산하여 제1 프레임차신호 FD1(Z,n)을 출력하는 제1 프레임차신호 산출부(40)와; 현재블록의 영상정보 B(Z,n)와 현재블록과 동일한 위치에 있는 이전 프레임의 블록 영상의 차를 계산하여 제2 프레임차신호 FD2(Z,n)를 출력하는 제2 프레임차신호 산출부(70)와; 상기 각 프레임차신호 산출부(40,70)의 출력의 에너지 레벨을 비교하여 그 결과에 따라 제어신호를 출력하는 왜곡 비교부(80)와; 상기 왜곡 비교부(80)의 제어신호에 따라 상기 프레임차신호(FD1(Z,n) 혹은 FD2(Z,n))를 선택하는 선택기(90)와; 상기 왜곡 비교부(80)의 제어신호에 따라 상기 초기 벡터 산출부(20)의 초기 움직임 벡터 (Z,n) 혹은 영 벡터()를 선택하여 출력하는 벡터 선택기(100)와; 현재블록의 영상정보 B(Z,n)를 입력받아 현재블록 내의 화소들간의 수평 차신호 SDX(Z,n) 및 수직 차신호 SDY(Z,n)를 출력하는 수평/수직차신호 산출부(60)와; 상기 선택기(90)에서 선택된 프레임차신호(FD1(Z,n) 혹은 FD2(Z,n)) 및 수평/수직차신호 산출부(60)의 수평차신호 SDX(Z,n)와 수직차신호 SDY(Z,n)를 입력받아 현재블록에 대한 움직임 벡터(Z,n)를 구한 다음, 그 결과에 상기 벡터 선택기(100)의 출력을 가산하여 최종 움직임 벡터(Z,n)를 출력함과 아울러 출력된 최종 움직임 벡터(Z,n)를 상기 움직임 벡터 저장부(10)로 궤환하는 움직임벡터 산출부(50)로 구성하며, 이와 같이 구성한 본 발명에 따른 다른 실시예의 동작 및 작용을 첨부한 도면을 참조하여 상세히 설명한다.FIG. 5 is a block diagram showing the configuration of another embodiment of the three-dimensional regression motion vector estimating apparatus using the tilt information of the video signal of the present invention. As shown therein, a motion vector of each block of the previous frame is shown. Motion vector among blocks of (Z, n) and current frame Motion vector of block from which (Z, n) is calculated After storing (Z, n), respectively, the motion vector of neighboring blocks adjacent to the current block according to the position information (Z) of the current block A motion vector storage unit 10 for outputting (Z, n); Motion vectors of surrounding blocks output from the motion vector storage unit 10 An initial vector calculator 20 for receiving (Z, n) and outputting an initial motion vector (Z, n) to be applied to the current block; A motion compensation unit 30 for compensating the input previous frame image information according to the initial motion vector (Z, n) and outputting block image information B (Z-, n-1) of the previous frame corresponding to the current block; ; The first frame difference signal FD1 (Z, n) is calculated by calculating a difference between the image information B (Z, n) of the current block and the block image information B (Z-, n-1) of the previous frame of the motion compensator 30. A first frame difference signal calculation unit 40 for outputting a); A second frame difference signal calculator for calculating a difference between the block information of the image information B (Z, n) of the current block and the previous frame at the same position as the current block and outputting a second frame difference signal FD2 (Z, n) 70 and; A distortion comparing unit (80) for comparing the energy levels of the outputs of the frame difference signal calculating units (40, 70) and outputting a control signal according to the result; A selector (90) for selecting the frame difference signal (FD1 (Z, n) or FD2 (Z, n)) according to the control signal of the distortion comparing unit (80); A vector selector (100) for selecting and outputting an initial motion vector (Z, n) or a zero vector () of the initial vector calculator (20) according to the control signal of the distortion comparison unit (80); Calculate horizontal / vertical difference signal that receives image information B (Z, n) of current block and outputs horizontal difference signal SD X (Z, n) and vertical difference signal SD Y (Z, n) between pixels in current block Section 60; Vertical difference from the frame difference signal FD1 (Z, n) or FD2 (Z, n) selected by the selector 90 and the horizontal difference signal SD X (Z, n) of the horizontal / vertical difference signal calculator 60 Motion vector for current block by receiving signal SD Y (Z, n) Find (Z, n) and then add the output of the vector selector 100 to the resulting motion vector Outputs (Z, n) and outputs the final motion vector (Z, n) is composed of a motion vector calculation unit 50 for feeding back to the motion vector storage unit 10, and the operation and action of another embodiment according to the present invention configured as described above will be described in detail with reference to the accompanying drawings. do.

본 발명의 다른 실시예의 일반적인 동작은 상기 일실시예와 동일하다.The general operation of another embodiment of the present invention is the same as that of the above embodiment.

다만, 주위블록들의 움직임과 현재블록의 움직임이 유사하지 않은 경우 초기 움직임 벡터 (Z,n)로 이동 보상한 결과가 단순히 현재블록과 동일한 위치의 이전 프레임의 블록을 가져온 결과보다 현재블록과의 상관성이 낮게 되는데, 이를 위해 왜곡 비교부(80)를 두어 현재블록과 주위블록의 움직임 정도를 비교하여 그 결과로 프레임차신호 FD(Z,n) 및 초기 움직임 벡터 (Z,n)를 선택적으로 출력함으로써, 최종 움직임 벡터(Z,n)를 결정하는 것이 다르다.However, when the motions of the neighboring blocks and the current block are not similar, the result of the motion compensation with the initial motion vector (Z, n) is more correlated with the current block than the result of simply bringing the previous frame block at the same position as the current block. To this end, the distortion comparison unit 80 is set to compare the degree of motion of the current block and the neighboring block, and as a result, the frame difference signal FD (Z, n) and the initial motion vector (Z, n) are selectively output. By, final motion vector Determining (Z, n) is different.

즉, 움직임벡터 저장부(10)는 이전 프레임의 각 블록에 대한 움직임 벡터(Z,n) 및 현재 프레임의 블록 중 움직임 벡터(Z,n)가 산출된 블록의 움직임 벡터(Z,n)를 저장한 다음, 현재블록의 위치 정보(Z)에 따라 현재블록에 이웃한 주위블록의 움직임 벡터(Z,n)를 초기벡터 산출부(20)로 출력한다.That is, the motion vector storage unit 10 is a motion vector for each block of the previous frame. Motion vector among blocks of (Z, n) and current frame Motion vector of block from which (Z, n) is calculated After storing (Z, n), the motion vector of neighboring blocks neighboring the current block according to the position information (Z) of the current block (Z, n) is output to the initial vector calculator 20.

그러면, 상기 초기벡터 산출부(20)는 상기 움직임벡터 저장부(10)에서 출력한 주위블록의 움직임 벡터(Z,n)를 입력받아 현재블록에 적용할 초기 움직임 벡터 (Z,n)를 출력하는데, 여기서 n은 현재블록이 포함된 프레임 번호이고, Z는 현재블록의 위치를 나타내는 값으로 Z=(x,y)로 표현할 수 있다.Then, the initial vector calculator 20 is a motion vector of the neighboring block output from the motion vector storage unit 10 It receives (Z, n) and outputs an initial motion vector (Z, n) to be applied to the current block, where n is a frame number including the current block and Z is a value indicating the position of the current block. x, y).

그리고, 상기 초기 움직임 벡터 (Z,n)는 일반적으로 주위 벡터들의 평균값 혹은 중간값 등을 고려하여 구할 수 있다.In addition, the initial motion vector (Z, n) may be generally obtained by considering an average value or a median value of surrounding vectors.

그 다음, 움직임 보상부(30)는 상기 초기 움직임 벡터 (Z,n)를 이용하여 이전 프레임 영상을 이동보상 함으로써, 현재블록에 대응하는 이동보상된 이전 프레임의 블록영상정보 B(Z-,n-1)를 출력한다.Next, the motion compensator 30 compensates for the previous frame image using the initial motion vector (Z, n), thereby providing block image information B (Z-, n) of the previously compensated frame corresponding to the current block. Output -1)

그러면, 제1 프레임차신호 산출부(40)는 현재블록의 영상정보 B(Z,n)와 상기 움직임 보상부(30)의 이전 프레임의 블록 영상정보 B(Z-,n-1)의 차를 계산하여 제1 프레임차신호 FD1(Z,n)을 출력하고, 제2 프레임차신호 산출부(70)는 현재블록의 영상정보 B(Z,n)와 현재블록과 동일한 위치에 있는 이전 프레임의 블록 영상의 차를 계산하여 제2 프레임차신호 FD2(Z,n)를 출력한다.Then, the first frame difference signal calculator 40 determines the difference between the image information B (Z, n) of the current block and the block image information B (Z-, n-1) of the previous frame of the motion compensation unit 30. To calculate the first frame difference signal FD1 (Z, n), and the second frame difference signal calculation unit 70 outputs the previous frame at the same position as the image information B (Z, n) of the current block. The second frame difference signal FD2 (Z, n) is output by calculating the difference between the block images of the?

그리고, 왜곡 비교부(80)는 상기 각 프레임차신호(FD1(Z,n),FD2(Z,n))의 에너지 레벨을 비교하는데, 여기서 상기 제1 프레임차신호 FD1(Z,n)이 상기 제2 프레임차신호 FD2(Z,n)보다 에너지가 크다면 현재블록과 주위블록의 움직임이 유사하지 않은 것을 의미하므로, 선택기(90)를 통해 상기 제2 프레임차신호 FD2(Z,n)를 프레임차신호 FD(Z,n)로 출력하도록 제어함과 동시에 벡터 선택기(100)가 영 벡터()를 출력하도록 제어신호를 출력한다.The distortion comparison unit 80 compares the energy levels of the respective frame difference signals FD1 (Z, n) and FD2 (Z, n), where the first frame difference signal FD1 (Z, n) is If the energy is greater than the second frame difference signal FD2 (Z, n), this means that the movement of the current block and the neighboring blocks is not similar, and thus, the second frame difference signal FD2 (Z, n) is selected through the selector 90. Is controlled to output the frame difference signal FD (Z, n) and a control signal is output so that the vector selector 100 outputs a zero vector ().

또한, 상기 제1 프레임차신호 FD1(Z,n)이 상기 제2 프레임차신호 FD2(Z,n)보다 에너지가 크다면 현재블록과 주위블록의 움직임이 유사함을 의미하므로, 선택기(90)를 통해 상기 제1 프레임차신호 FD1(Z,n)를 프레임차신호 FD(Z,n)로 출력하도록 제어함과 동시에 벡터 선택기(100)가 상기 초기 벡터 산출부(20)의 초기 움직임 벡터 (Z,n)를 출력하도록 제어신호를 출력한다.In addition, when the first frame difference signal FD1 (Z, n) has a larger energy than the second frame difference signal FD2 (Z, n), the motion of the current block and the neighboring block is similar, so that the selector 90 is used. By controlling the first frame difference signal FD1 (Z, n) to be output as the frame difference signal FD (Z, n) through the vector selector 100, the initial motion vector of the initial vector calculation unit 20 ( A control signal is output to output Z, n).

한편, 수평/수직차신호 산출부(60)는 현재블록의 영상정보 B(Z,n)를 입력받아 현재블록 내의 화소들간의 수평 차신호 SDX(Z,n) 및 수직 차신호 SDY(Z,n)를 상기 수학식6에 의해 계산하여 출력한다.Meanwhile, the horizontal / vertical difference signal calculator 60 receives the image information B (Z, n) of the current block and receives the horizontal difference signal SD X (Z, n) and the vertical difference signal SD Y ( Z, n) is calculated by the equation (6) and output.

그러면, 움직임벡터 산출부(50)는 상기 프레임 차신호 FD(Z,n) 및 수평 차신호 SDX(Z,n)와 수직 차신호 SDY(Z,n)를 입력받아 상기 수학식5에 따라 연산을 수행하여 현재블록에 대한 움직임 벡터를 구한다.Then, the motion vector calculating unit 50 receives the frame difference signal FD (Z, n) and the horizontal difference signal SD X (Z, n) and the vertical difference signal SD Y (Z, n) in equation (5). The operation is performed to obtain a motion vector for the current block.

그리고, 그 움직임 벡터에 상기 벡터 선택기(100)의 출력((Z,n) 혹은 ())을 가산하여 최종 움직임 벡터(Z,n)를 출력한다.The final motion vector is obtained by adding the output ((Z, n) or ()) of the vector selector 100 to the motion vector. Outputs (Z, n)

그러면, 상기 최종 움직임 벡터(Z,n)는 움직임 벡터 저장부(10)로 궤환되어 저장되는데, 이는 다음 블록에 대한 초기 움직임 벡터 (Z,n)의 결정에 사용된다.Then, the final motion vector (Z, n) is fed back to the motion vector storage unit 10 and stored, which is used to determine the initial motion vector (Z, n) for the next block.

도7은 "탁구" 영상 시퀀스에 대하여 종래 및 본 발명의 일실실예에 의해 추정된 움직임 벡터를 이용하여 이동 보상한 결과를 나타낸 것으로, 본 발명에 의한 방식이 모든 영역에서 향상된 PSNR(Peak Signal to Noise Ratio)를 나타냄은 물론, 본 발명에 의해 움직임 추정의 정확도가 향상되었음을 보여 준다.FIG. 7 shows the result of motion compensation using the motion vector estimated by the conventional and exemplary embodiments of the "table tennis" image sequence, and the PSNR (Peak Signal to Noise Ratio), as well as showing that the accuracy of motion estimation is improved by the present invention.

여기서, 초기 움직임 벡터 (Z,n)는 단순히 주위블록의 움직임 벡터(Z,n)를 평균하였다.Here, the initial motion vector (Z, n) is simply the motion vector of the neighboring blocks. (Z, n) was averaged.

이상에서 설명한 바와 같이 본 발명은 수평,수직 그리고 시간 방향으로 현재블록에 인접한 주위블록들의 움직임 벡터를 이용하여 초기 움직임 벡터를 구한 다음, 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보를 출력하거나, 현재블록과 주위블록의 움직임 정도를 비교하여 그 결과로 프레임차신호 및 초기 움직임 벡터를 선택적으로 출력하며 이에 따라 최종 움직임 벡터를 추정함으로써, 빠른 움직임과 전역 움직임이 있는 영역에서도 움직임 벡터의 추정의 정확성이 향상되는 효과가 있다.As described above, the present invention obtains an initial motion vector using motion vectors of neighboring blocks adjacent to the current block in horizontal, vertical and time directions, and then compensates the input previous frame image information according to the initial motion vector. By outputting the block image information of the previous frame corresponding to the block, or comparing the motion degree of the current block and the neighboring block, and selectively outputting the frame difference signal and the initial motion vector as a result, the final motion vector is estimated accordingly. Even in the region with motion and global motion, the accuracy of motion vector estimation is improved.

Claims (2)

이전 프레임의 각 블록에 대한 움직임 벡터와 현재 프레임의 블록 중 움직임 벡터가 산출된 블록의 움직임 벡터를 각각 저장한 다음, 현재블록의 위치 정보에 따라 현재블록에 이웃한 주위블록의 움직임 벡터를 출력하는 움직임벡터 저장부와; 상기 움직임벡터 저장부에서 출력한 주위블록의 움직임 벡터를 입력받아 현재블록에 적용할 초기 움직임 벡터를 출력하는 초기벡터 산출부와; 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보를 출력하는 움직임 보상부와; 현재블록의 영상정보와 움직임 보상된 이전 프레임의 블록 영상정보의 차를 계산하여 프레임차신호를 출력하는 프레임차신호 산출부와; 현재블록의 영상정보를 입력받아 현재블록 내의 화소들간의 수평 차신호 및 수직 차신호를 출력하는 수평/수직차신호 산출부와; 상기 프레임차신호 및 수평차신호와 수직차신호를 입력받아 현재블록에 대한 움직임 벡터를 구한 다음, 그 결과를 상기 초기벡터 산출부의 초기 움직임 벡터와 가산하여 최종 움직임 벡터를 출력함과 아울러 출력된 최종 움직임 벡터를 상기 움직임 벡터 저장부로 궤환하는 움직임벡터 산출부를 포함하여 구성한 것을 특징으로 하는 비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치.Storing the motion vector of each block of the previous frame and the motion vector of the block from which the motion vector of the current frame is calculated, and then outputting the motion vector of the neighboring block adjacent to the current block according to the position information of the current block. A motion vector storage unit; An initial vector calculator for receiving a motion vector of a neighboring block output from the motion vector storage unit and outputting an initial motion vector to be applied to a current block; A motion compensator for compensating input previous frame image information according to the initial motion vector and outputting block image information of a previous frame corresponding to a current block; A frame difference signal calculating unit configured to calculate a difference between the image information of the current block and the block image information of the previous frame with motion compensation and output a frame difference signal; A horizontal / vertical difference signal calculator for receiving image information of the current block and outputting a horizontal difference signal and a vertical difference signal between pixels in the current block; The motion vector for the current block is obtained by receiving the frame difference signal, the horizontal difference signal and the vertical difference signal, and the result is added to the initial motion vector of the initial vector calculator to output a final motion vector and the final output And a motion vector calculating unit for returning a motion vector to the motion vector storage unit. 이전 프레임의 각 블록에 대한 움직임 벡터와 현재 프레임의 블록 중 움직임 벡터가 산출된 블록의 움직임 벡터를 각각 저장한 다음, 현재블록의 위치 정보에 따라 현재블록에 이웃한 주위블록의 움직임 벡터를 출력하는 움직임벡터 저장부와; 상기 움직임벡터 저장부에서 출력한 주위블록의 움직임 벡터를 입력받아 현재블록에 적용할 초기 움직임 벡터를 출력하는 초기벡터 산출부와; 입력된 이전 프레임 영상정보를 상기 초기 움직임 벡터에 따라 보상하여 현재블록에 대응하는 이전 프레임의 블록 영상정보를 출력하는 움직임 보상부와; 현재블록의 영상정보와 상기 움직임 보상부의 이전 프레임의 블록 영상정보의 차를 계산하여 제1 프레임차신호를 출력하는 제1 프레임차신호 산출부와; 현재블록의 영상정보와 현재블록과 동일한 위치에 있는 이전 프레임의 블록 영상의 차를 계산하여 제2 프레임차신호를 출력하는 제2 프레임차신호 산출부와; 상기 각 프레임차신호 산출부의 출력의 에너지 레벨을 비교하여 그 결과에 따라 제어신호를 출력하는 왜곡 비교부와; 상기 왜곡 비교부의 제어신호에 따라 상기 프레임차신호를 선택하는 선택기와; 상기 왜곡 비교부의 제어신호에 따라 상기 초기 벡터 산출부의 초기 움직임 벡터 혹은 영 벡터를 선택하는 벡터 선택기와; 현재블록의 영상정보를 입력받아 현재블록 내의 화소들간의 수평 차신호 및 수직 차신호를 출력하는 수평/수직차신호 산출부와; 상기 선택기에서 선택된 프레임차신호 및 수평/수직차신호 산출부의 수평차신호와 수직차신호를 입력받아 현재블록에 대한 움직임 벡터를 구한 다음, 그 결과에 상기 벡터 선택기의 출력을 가산하여 최종 움직임 벡터를 출력함과 아울러 출력된 최종 움직임 벡터를 상기 움직임 벡터 저장부로 궤환하는 움직임벡터 산출부를 포함하여 구성한 것을 특징으로 하는 비디오신호의 기울기 정보를 이용한 3차원 회기형 움직임 벡터 추정장치.Storing the motion vector of each block of the previous frame and the motion vector of the block from which the motion vector of the current frame is calculated, and then outputting the motion vector of the neighboring block adjacent to the current block according to the position information of the current block. A motion vector storage unit; An initial vector calculator for receiving a motion vector of a neighboring block output from the motion vector storage unit and outputting an initial motion vector to be applied to a current block; A motion compensator for compensating input previous frame image information according to the initial motion vector and outputting block image information of a previous frame corresponding to a current block; A first frame difference signal calculator for calculating a difference between the image information of the current block and the block image information of the previous frame of the motion compensator and outputting a first frame difference signal; A second frame difference signal calculator for calculating a difference between the image information of the current block and the block image of the previous frame at the same position as the current block and outputting a second frame difference signal; A distortion comparing unit for comparing the energy levels of the outputs of the respective frame difference signal calculating units and outputting a control signal according to the result; A selector for selecting the frame difference signal according to the control signal of the distortion comparison unit; A vector selector for selecting an initial motion vector or a zero vector of the initial vector calculator according to a control signal of the distortion comparator; A horizontal / vertical difference signal calculator for receiving image information of the current block and outputting a horizontal difference signal and a vertical difference signal between pixels in the current block; The motion vector for the current block is obtained by receiving the frame difference signal selected by the selector and the horizontal difference signal and the vertical difference signal of the horizontal / vertical difference signal calculating unit, and then the output of the vector selector is added to the final motion vector. And a motion vector calculator for outputting the output final motion vector to the motion vector storage unit.
KR1019990066262A 1999-12-30 1999-12-30 Apparatus for 3-d recursive motion vector estimation using the gradient of video signal KR20010058887A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990066262A KR20010058887A (en) 1999-12-30 1999-12-30 Apparatus for 3-d recursive motion vector estimation using the gradient of video signal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990066262A KR20010058887A (en) 1999-12-30 1999-12-30 Apparatus for 3-d recursive motion vector estimation using the gradient of video signal

Publications (1)

Publication Number Publication Date
KR20010058887A true KR20010058887A (en) 2001-07-06

Family

ID=19633402

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990066262A KR20010058887A (en) 1999-12-30 1999-12-30 Apparatus for 3-d recursive motion vector estimation using the gradient of video signal

Country Status (1)

Country Link
KR (1) KR20010058887A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7336838B2 (en) 2003-06-16 2008-02-26 Samsung Electronics Co., Ltd. Pixel-data selection device to provide motion compensation, and a method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0620050A (en) * 1992-07-03 1994-01-28 Matsushita Electric Ind Co Ltd Dynamic image signal decoding device and estimated motion vector calculation method
JPH07107484A (en) * 1993-10-01 1995-04-21 Mitsubishi Electric Corp Picture transmitter
KR960036722A (en) * 1995-03-30 1996-10-28 조백제 Video Compression Device Using Fractal and Motion Compensation and Its Compression Method
JPH09168155A (en) * 1995-12-15 1997-06-24 Kokusai Denshin Denwa Co Ltd <Kdd> Variable frame rate dynamic image coding method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0620050A (en) * 1992-07-03 1994-01-28 Matsushita Electric Ind Co Ltd Dynamic image signal decoding device and estimated motion vector calculation method
JPH07107484A (en) * 1993-10-01 1995-04-21 Mitsubishi Electric Corp Picture transmitter
KR960036722A (en) * 1995-03-30 1996-10-28 조백제 Video Compression Device Using Fractal and Motion Compensation and Its Compression Method
JPH09168155A (en) * 1995-12-15 1997-06-24 Kokusai Denshin Denwa Co Ltd <Kdd> Variable frame rate dynamic image coding method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7336838B2 (en) 2003-06-16 2008-02-26 Samsung Electronics Co., Ltd. Pixel-data selection device to provide motion compensation, and a method thereof

Similar Documents

Publication Publication Date Title
JP4242656B2 (en) Motion vector prediction method and motion vector prediction apparatus
KR100530223B1 (en) Frame interpolation method and apparatus at frame rate conversion
US5623313A (en) Fractional pixel motion estimation of video signals
KR100579493B1 (en) Motion vector generation apparatus and method
KR100492127B1 (en) Apparatus and method of adaptive motion estimation
KR20070069615A (en) Motion estimator and motion estimating method
US20060291561A1 (en) Motion error detector, motion error compensator comprising the same, and method for detecting and compensating motion error using the motion error compensator
JP2005050338A (en) Device and method for estimating movement considering inter-block correlation
KR100226684B1 (en) A half pel motion estimator
KR20060047590A (en) Motion vector estimation with improved motion vector selection
US6996177B1 (en) Motion estimation
Braspenning et al. True-motion estimation using feature correspondences
JP2008502196A (en) Global motion vector search method
Heinrich et al. Optimization of hierarchical 3DRS motion estimators for picture rate conversion
KR100364789B1 (en) Method for estimating motion and apparatus for the same
KR20040093424A (en) Signal processing apparatus and signal processing method
KR20040049214A (en) Apparatus and Method for searching motion vector with high speed
US20090244388A1 (en) Motion estimation method and related apparatus for determining target motion vector according to motion of neighboring image blocks
US9106926B1 (en) Using double confirmation of motion vectors to determine occluded regions in images
US8208552B2 (en) Method, video encoder, and integrated circuit for detecting non-rigid body motion
KR20010058887A (en) Apparatus for 3-d recursive motion vector estimation using the gradient of video signal
KR100848509B1 (en) Display apparatus and control method thereof
KR100532099B1 (en) Apparatus and method for converting frame rate
EP2237559A1 (en) Background motion estimate based halo reduction
JP3576618B2 (en) Motion vector detection method and apparatus

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application