KR0174451B1 - Method and apparatus for detecting a motion vector of a variable block based on a block matching algorithm - Google Patents

Method and apparatus for detecting a motion vector of a variable block based on a block matching algorithm Download PDF

Info

Publication number
KR0174451B1
KR0174451B1 KR1019950003961A KR19950003961A KR0174451B1 KR 0174451 B1 KR0174451 B1 KR 0174451B1 KR 1019950003961 A KR1019950003961 A KR 1019950003961A KR 19950003961 A KR19950003961 A KR 19950003961A KR 0174451 B1 KR0174451 B1 KR 0174451B1
Authority
KR
South Korea
Prior art keywords
block
motion vector
search
candidate
motion
Prior art date
Application number
KR1019950003961A
Other languages
Korean (ko)
Other versions
KR960033125A (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 배순훈
Priority to KR1019950003961A priority Critical patent/KR0174451B1/en
Publication of KR960033125A publication Critical patent/KR960033125A/en
Application granted granted Critical
Publication of KR0174451B1 publication Critical patent/KR0174451B1/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
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/172Methods 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 picture, frame or field

Landscapes

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

Abstract

본 발명은 현재 프레임과 이전 프레임간의 움직임 벡터들을 블록 매칭 움직임 추정 기법에 근거하여 검출하는 장치에 관한 것으로, 현재 프레임내에서 물체의 에지 영역이 없는 평이한 영상 패턴을 갖는 탐색블록을 확장하는 가변블록 형성부와, 상기 확장된 탐색 블록을 각각의 후보블록들에 대하여 움직임 추정을 행하여 각각의 움직임 벡터 및 상기 움직임 벡터에 대응하는 오차함수를 발생하는 블록 매칭부와, 상기 오차함수들을 비교하여 최소 오차를 갖는 하나의 오차함수를 선택하고, 상기 선택된 최소 오차함수에 대응하는 후보블록을 지정하는 선택신호를 발생하는 최소 오차 검출기와 상기 선택신호에 대응하는 후보블록에 대한 움직임 벡터를 선택적으로 출력하는 움직임 벡터 선택 수단을 포함하는 것을 특징으로 한다.The present invention relates to an apparatus for detecting motion vectors between a current frame and a previous frame based on a block matching motion estimation technique. The present invention relates to a variable block for extending a search block having a plain image pattern without an edge region of an object in a current frame. A block matching unit for performing motion estimation on the extended search block for each candidate block to generate a motion vector and an error function corresponding to the motion vector, and comparing the error functions to obtain a minimum error. A motion vector for selecting one error function to have a minimum error detector for generating a selection signal specifying a candidate block corresponding to the selected minimum error function and selectively outputting a motion vector for the candidate block corresponding to the selection signal; It characterized in that it comprises a selection means.

Description

가변 블록 매칭 움직임 추정 장치Variable block matching motion estimation device

제1도는 움직임 추정 시스템에 사용하기 위한 본 발명에 따른 가변 블록 움직임 벡터 측정 장치의 개략도.1 is a schematic diagram of a variable block motion vector measuring apparatus according to the present invention for use in a motion estimation system.

제2도는 제1도에 도시된 가변 블록 형성부의 상세 블록도.FIG. 2 is a detailed block diagram of the variable block forming unit shown in FIG.

제3도(a) 및 제3도(b)는 픽셀 단위로 확장된 가변 블록을 설명하는 예시도.3A and 3B are exemplary diagrams illustrating a variable block extended in units of pixels.

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

10 : 탐색 영역 형성부 21,22,29 : 후보 블록 형성부10: search region forming unit 21, 22, 29: candidate block forming unit

41,42,49 : 블록 매칭부 50 : 최소 오차 검출기41, 42, 49: block matching unit 50: minimum error detector

60 : 움직임 벡터 선택기 100 : 가변 블록 형성부60: motion vector selector 100: variable block forming unit

본 발명은 영상 신호 부호화 시스템에 사용하기 위한 움직임 추정 장치에 관한 것으로, 특히, 가변적인 블록의 움직임 벡터를 블록 매칭 알고리즘에 의거하여 검출하는 움직임 추정 장치에 관한 것이다.The present invention relates to a motion estimation apparatus for use in a video signal encoding system, and more particularly, to a motion estimation apparatus for detecting a motion vector of a variable block based on a block matching algorithm.

일련의 영상 프레임을 포함하는 영상신호가 디지탈 형태로 표현될 때, 특히, 고선명 텔레비젼(HDTV) 시스템의 경우에는 상당한 양의 전송 데이타가 발생된다. 그러나, 통상적인 전송채널의 이용 가능한 주파수 대역폭은 한정되어 있기 때문에, 한정된 채널 대역폭을 통해서 상당한 양의 디지탈 데이타를 전송하기 위해서는 전송 데이타를 압축 또는 감축하지 않으면 안된다. 다양한 비디오 압축 기법들중에서, 인접한 두개의 비디오 프레임들간의 비디오 신호들의 시간적인 중복성(Temporal Redundancy)을 이용해서 비디오 신호들을 압축하는 움직임 보상 프레임간 부호화(Motion Compensated Interframe Coding)기법이 효과적인 압축 기법들중의 하나로 알려져 있다.When a video signal comprising a series of video frames is represented in digital form, a considerable amount of transmission data is generated, especially in the case of high definition television (HDTV) systems. However, since the usable frequency bandwidth of a typical transport channel is limited, in order to transmit a considerable amount of digital data through the limited channel bandwidth, transmission data must be compressed or reduced. Among various video compression techniques, the Motion Compensated Interframe Coding technique, which compresses video signals using temporal redundancy of two adjacent video frames, is an effective compression technique. It is known as one of.

움직임 보상 프레임간 부호화 방법에 있어서, 현재 프레임 데이타는 현재 프레임(Current Frame)과 이전 프레임(Previous Frame)간의 움직임 추정에 의해서 이전 프레임 데이타로 부터 추정된다. 그와같이 추정된 움직임은 이전 프레임과 현재 프레임간의 픽셀들의 변위를 나타내는 2차원 움직임 벡터들로서 나타낼 수 있다.In the motion compensation inter-frame encoding method, current frame data is estimated from previous frame data by motion estimation between a current frame and a previous frame. Such estimated motion can be represented as two-dimensional motion vectors representing the displacement of the pixels between the previous frame and the current frame.

본 기술 분야에서 제안된 움직임 추정 기법들중의 하나는 블록 매칭(Block Matching) 알고리즘이다. 블록 매칭 알고리즘에 따르면, 현재 프레임은 동일한 크기를 갖는 다수개의 탐색 블록(Search Block)들로 분할된다. 전형적으로, 탐색 블록의 크기는 8×8 내지 32×32 픽셀 범위를 갖는다. 현재 프레임에서 탐색 블록에 대한 움직임과 벡터를 결정하기 위해서, 현재 프레임의 탐색 블록과 이전 프레임내의 대체로 큰 탐색 영역내에 포함된 동일한 크기를 갖는 복수개의 후보 블록(Candidate Block)들의 각각과 유사성 계산(Similarity Calculation)을 수행한다. 유사성 측정을 수행하는 경우에, 평균 자승 오차(Mean Square Error: MSE) 또는 평균 절대 오차(Mean Absolute Error: MAE)와 같은 다양한 오차 함수를 사용할 수 있다.One of the motion estimation techniques proposed in the art is a block matching algorithm. According to the block matching algorithm, the current frame is divided into a plurality of search blocks having the same size. Typically, the size of the search block ranges from 8x8 to 32x32 pixels. In order to determine the motion and the vector for the search block in the current frame, a similarity calculation is performed with each of a plurality of candidate blocks having the same size included in the search block of the current frame and the generally large search area in the previous frame. Calculation) is performed. When performing the similarity measurement, various error functions such as Mean Square Error (MSE) or Mean Absolute Error (MAE) can be used.

그리고, 정의에 의하면, 움직임 벡터는 최소의 오차 함수를 야기하는 탐색 블록과 후보 블록간의 변위를 나타내며, 이러한 움직임 벡터는 수신기에서 상기 이전프레임으로 부터 블록 단위로 영상을 재구성하기 위해 사용된다.And, by definition, the motion vector represents a displacement between the search block and the candidate block causing a minimum error function, and the motion vector is used by the receiver to reconstruct the image block by block from the previous frame.

그와같은 블록 단위 움직임 추정에 있어서, 동일한 크기를 갖는 탐색 블록을 이용하는 것이 바람직하다. 그러나, 경우에 따라, 현재 프레임내 물체가 몇개의 인접 블록들에 걸쳐서 에지(edge)가 없거나 혹은 약간의 에지를 갖는 평이한 영상 패턴(Plain Picture Pattern)을 갖는 경우가 종종 있다. 전자의 경우에 있어서, 블록 매칭 움직임 추정 장치는 각각의 블록들마다 서로다른 움직임 벡터들을 구할수 있으며, 후자의 경우에 있어서는 움직임 벡터를 전술한 에지가 없는 평이한 영상 패턴의 움직임 벡터와 동일하게 검출할 수도 있다. 이것은 움직임 벡터를 구할 때, 에지등 특징있는 그레이 레벨의 변화가 있을 때 보다 정확한 움직임 벡터가 구해질 수 있는데, 평이한 영상 패턴은 그러하지 못하기 때문이다.In such block-by-block motion estimation, it is preferable to use search blocks having the same size. However, in some cases, an object in the current frame often has a plain picture pattern with no edge or some edge over several adjacent blocks. In the former case, the block matching motion estimation apparatus can obtain different motion vectors for each block. In the latter case, the block matching motion estimation apparatus can detect the motion vector in the same way as the motion vector of the plain image pattern without edges described above. It may be. When a motion vector is obtained, a more accurate motion vector can be obtained when there is a characteristic gray level change such as an edge, because a plain image pattern does not.

따라서, 본 발명의 주목적은 가변 블록을 이용하여 움직임 벡터를 정확하게 검출할 수 있는 개선된 움직임 추정 장치를 제공하는 것이다.Accordingly, an object of the present invention is to provide an improved motion estimation apparatus capable of accurately detecting a motion vector using a variable block.

상술한 목적을 달성하기 위한 본 발명에 따른 움직임 벡터 검출장치는: 현재 프레임내에서 물체의 에지 영역이 없는 평이한 영상 패턴을 갖는 탐색블록을 확장하는 수단; 상기 확장된 탐색 블록을 각각의 후보블록들에 대하여 움직임 추정을 행하여 각각의 움직임 벡터 및 상기 움직임 벡터에 대응하는 오차함수를 발생하는 블록 매칭 수단; 상기 오차함수들을 비교하여 최소 오차를 갖는 하나의 오차함수를 선택하고, 상기 선택된 최소 오차함수에 대응하는 후보블록을 지정하는 선택신호를 발생하는 최소 오차 검출 수단; 상기 선택신호에 대응하는 후보블록에 대한 움직임 벡터를 선택적으로 출력하는 움직임 벡터 선택 수단을 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a motion vector detection apparatus comprising: means for extending a search block having a plain image pattern without an edge region of an object within a current frame; Block matching means for performing motion estimation on the candidate blocks for each of the extended search blocks to generate a motion vector and an error function corresponding to the motion vector; Minimum error detection means for selecting one error function having a minimum error by comparing the error functions, and generating a selection signal specifying a candidate block corresponding to the selected minimum error function; And motion vector selecting means for selectively outputting a motion vector for the candidate block corresponding to the selection signal.

이하, 본 발명은 첨보한 도면을 참조하여 다음과 같이 상세히 설명될 것이다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1도를 참조하면, 움직임 추정 시스템에 포함된 가변 블록 움직임 벡터 측정 장치의 바람직한 일실시예가 도시된다. 상기 움직임 추정 시스템은 일련의 연속하는 프레임, 즉, 현재 프레임과 그의 인접한 또는 이전 프레임간의 중복성을 감소시킴으로서 상당한 데이타 압축을 성취하는데 이용된다. 즉, 현재 프레임과 이전 프레임간에는 물체의 변위 또는 움직임에 의해 야기되는 편차(Difference)가 생길수가 있다. 그러나, 이러한 편차들은 프레임내에서 비교적 작은 영역에 국한될수 있다. 따라서, 현재 프레임의 영상 데이타를 전부 수신기(도시않됨)로 전송할 필요는 없다. 대신에, 그 변위 정보, 즉, 움직임 벡터를 전송하는 것으로도 족하다. 그러면 수신기는 전송된 움직임 벡터를 이용하여 수신기내의 프레임 메모리에 저장된 이전 프레임으로부터 현재 프레임을 재구성할 수 있다.Referring to FIG. 1, a preferred embodiment of a variable block motion vector measuring apparatus included in a motion estimation system is shown. The motion estimation system is used to achieve significant data compression by reducing the redundancy between a series of consecutive frames, ie, the current frame and its adjacent or previous frame. That is, there may be a difference between the current frame and the previous frame caused by displacement or movement of the object. However, these deviations can be limited to a relatively small area within the frame. Therefore, it is not necessary to transmit all the image data of the current frame to the receiver (not shown). Instead, it is sufficient to transmit the displacement information, that is, the motion vector. The receiver can then reconstruct the current frame from the previous frame stored in the frame memory in the receiver using the transmitted motion vector.

도시된 바와같이, 현재 프레임 신호는 라인(12)을 통해 가변 블록 형성부(100)로 제공된다. 가변 블록 형성부(100)는 현재 프레임을 블록 매칭을 수행하는데 사용하기 위한 다수개의 동일한 크기의 탐색 블록들로 분할한다. 제3도에서, 참조번호(200)로서 도시된 현재 프레임은, 예를들어, 20개의 분할된 탐색 블록들(S1 내지 S20)을 갖는 것으로 예시되며, 상기 각각의 탐색 블록들은 H x V 크기의 픽셀블록을 포함한다. 간략한 설명을 위하여 현재 프레임(200)에서 H 와 V 둘다는 16개의 픽셀들을 갖는 것으로 가정된다. 또한, 가변 블록 형성부(100)는 현재 프레임내에서 물체의 에지를 갖지않는 평이한 영상 패턴을 갖는 일련의 탐색 블록을 선택하고, 상기 탐색 블록의 경계부분이 에지를 포함할 때까지 한 픽셀 단위로 상기 선택된 탐색 블록을 확장한다. 선택된 탐색 블록들이, 예를들면, 제3도(b)에 도시된 (S7) 및 (S14)이라고 가정하면, 탐색 블록(S7) 및 (S14)은 물체들(202) 및 (204)의 에지를 포함하는 경계(E7 및 E14)까지로 각각 확장된다.As shown, the current frame signal is provided to the variable block forming unit 100 via a line 12. The variable block forming unit 100 divides the current frame into a plurality of search blocks of the same size for use in performing block matching. In FIG. 3, the current frame, shown as 200, is illustrated as having, for example, 20 divided search blocks S1 to S20, each of which is H x V sized. It includes a pixel block. For simplicity, it is assumed that both H and V have 16 pixels in the current frame 200. In addition, the variable block forming unit 100 selects a series of search blocks having a plain image pattern having no edge of an object in the current frame, and selects them in units of pixels until the boundary of the search block includes an edge. Expand the selected search block. Assuming that the selected search blocks are, for example, (S7) and (S14) shown in FIG. 3 (b), the search blocks S7 and S14 are edges of the objects 202 and 204. Each extends to a boundary E7 and E14 including.

이렇게 확장된 픽셀블록은 다수의 블록 매칭부들(41 내지 49)로 제공된다. 본 발명에 있어서, 에지의 존재는 상기 확장된 블록에 대한 국부 분산값(Local Variance)을 계산함으로서 검출될 수 있으며, 상기 분산값 계산은 이하에서 제2도를 참조하여 더욱 상세하게 설명될 것이다.The extended pixel block is provided to the plurality of block matching units 41 to 49. In the present invention, the presence of an edge can be detected by calculating a local variance for the extended block, which will be described in more detail with reference to FIG. 2 below.

제2도는 제1도에 도시된 가변 블록 형성부(100)의 상세 블록도를 도시한다. 평이한 영상을 나타내는 탐색 블록을 선택하기 위해서, 가변 블록형성부(100)는 라인(12)상의 현재 프레임을 제3도(a)에 도시한바와같은 일련의 블록 형성단을 구비한다. 본 발명에서는 간략한 설명을 위하여 단지 세 개의 블록 형성단(111, 112 및 119)만이 도시된다. 각각의 블록 형성단들(111, 112 및 119)에서, 탐색블록은 수평 및 수직방향으로 1 부터 n 까지 한 픽셀씩 점차적으로 확장된다. 보다 상세하게 말해서, 제1블록 형성단(111)은 H x V 픽셀 패턴의 블록들을 생성하고, 제2블록 형성단(112)은 상기 탐색 블록을 (H+1) x (V+1) 픽셀 패턴으로 확장하며, 동일한 방식으로 마지막 블록 형성단(119)은 (H+n) x (V+n) 픽셀 패턴의 확장 블록들을 생성한다. 블록 형성단들(111 내지 119)에 의해 생성된 확장된 블록들은 각기 대응하는 분산값 검출기들(121 내지 129)와 가변 블록 선택기(160)로 제공된다.FIG. 2 shows a detailed block diagram of the variable block forming unit 100 shown in FIG. In order to select a search block representing a plain image, the variable block forming unit 100 includes a series of block forming stages as shown in FIG. 3 (a) of the current frame on the line 12. In the present invention, only three block forming stages 111, 112 and 119 are shown for the sake of brevity. In each of the block forming stages 111, 112, and 119, the search block is gradually expanded by one pixel from 1 to n in the horizontal and vertical directions. In more detail, the first block forming end 111 generates blocks of an H x V pixel pattern, and the second block forming end 112 converts the search block into (H + 1) x (V + 1) pixels. In the same way, the last block forming stage 119 generates expansion blocks of (H + n) x (V + n) pixel patterns. The expanded blocks generated by the block forming stages 111 to 119 are provided to the corresponding dispersion value detectors 121 to 129 and the variable block selector 160, respectively.

각각의 분산값 검출기(121 내기 129)는 각기 대응하는 블록 형성단(111 내지 119)로부터 제공된 확장된 블록에 대한 분산값을 계산함으로써 에지 영역이 검출되도록 한다. 분산값 검출기(121 내지 129)에 이해 계산되는 분산값은 하기 수학식 1과 같이 정의 될 수 있다.Each variance detector 121 bet 129 causes the edge region to be detected by calculating the variance value for the extended block provided from the corresponding block forming stages 111-119, respectively. The dispersion value calculated by the dispersion value detectors 121 to 129 may be defined as in Equation 1 below.

상기 수학식에서, var(i, j)는 탐색 블록내 좌표(i, j)에서의 픽셀의 분산값을 나타내고; EH x EV는 확장된 블록의 크기이고 ; I(i, j)는 확장 블록내 픽셀 좌표(i, j)에서의 루미넌스 레벨을 나타내며; 그리고 평균(mean)은 확장 블록내 픽셀들에 대한 평균 루미넌스 레벨을 나타낸다.In the above equation, var (i, j) represents a variance value of pixels at coordinates (i, j) in the search block; EH x EV is the size of the extended block; I (i, j) represents the luminance level in pixel coordinates i, j in the extension block; And mean represents the average luminance level for the pixels in the extension block.

상술한 수학식 1에서 평균 루미넌스 레벨은 하기 수학식 2와 규정된다.The average luminance level in Equation 1 described above is defined by Equation 2 below.

각각의 분산값 검출기(121 내지 129)에 의해 계산된 모든 분산값들은 분산값 선택기(150)로 인가된다. 분산값 선택기(150)는 각각의 분산값 검출기(121 내지 129)에 의해 제공된 분산값들을 기설정된 임계값과 비교한다. 본 발명에 있어서, 기설정된 임계값은 평이한 영상 패턴을 갖는 탐색 블록의 분산값들보다 크되 그 값에 가장 근사한 값으로 선택된다. 분산값 선택기(150)는 상술한 임계값보다 작은 분산값을 선택하며, 그 선택된 분산값을 지정하는 선택신호를 가변 블록선택기(160)로 제공한다.All variance values calculated by each variance detector 121-129 are applied to a variance selector 150. The variance selector 150 compares the variance values provided by each variance detector 121-129 with a preset threshold. In the present invention, the predetermined threshold value is selected to be larger than the variance values of the search block having the plain image pattern but closest to the value. The variance value selector 150 selects a variance value smaller than the above-described threshold value, and provides the variable block selector 160 with a selection signal specifying the selected variance value.

통상적인 멀티플렉서로 구성되는 가변 블록 선택기(160)는 분산값 선택기(150)으로부터 제공된 선택신호에 응답하여, 그에 대응하는 하나의 확장된 블록을 선택한다 그 다음, 가변 블록 선택기(160)에 의해 선택된 확장된 블록은 상술한 확장된 탐색블록으로서 제1도에 도시한 바와같이 라인(110)을 통하여 각각의 블록 매칭부들(41 내지 49)에 제공된다.The variable block selector 160, which is composed of a conventional multiplexer, selects one extended block corresponding thereto in response to the selection signal provided from the variance selector 150. Then, the variable block selector 160 selects the extended block. The extended block is provided to the respective block matching units 41 to 49 through the line 110 as shown in FIG. 1 as the extended search block described above.

제1도를 다시 참조하면, 메모리(도시않됨)에 저장된 이전 프레임은 라인(22)을 통하여 탐색 영역 형성부(10)로 공급된다. 탐색 영역 형성부(10)는 탐색 또는 비교할 수 있도록 동일한 크기, 형상 및 탐색 패턴으로된 대체로 큰 탐색 영역을 규정한다.Referring back to FIG. 1, the previous frame stored in the memory (not shown) is supplied to the search region forming unit 10 via the line 22. The search region forming section 10 defines a generally large search region of the same size, shape, and search pattern so that it can be searched or compared.

탐색 영역 형성부(10)에서 탐색 영역이 결정된 후, 탐색 영역의 데이타는 다수의 후보 블록 형성부로 공급되는데, 제1도에는 그 중의 단지 세개의 형성부들(21, 22 및 29)만이 예시된다. 각각의 후보 블록형성부(21, 22 및 29)에서는 마치 탐색 블록과 동일한 크기의 후보블록을 탐색 영역을 통하여 그 상단의 최좌측위치에서 시작하여 수평 방향으로 한번에 하나의 픽셀씩 이동시킨다음, 상기 탐색 블록이 상기 탐색 영역내의 하단 최우측 위치에 도달할때까지, 그 탐색 영역을 통하여 한번에 하나의 주사 라인씩 수직방향으로 하향 이동시킴으로서 상기 탐색 영역으로부터 후보 블록을 형성한다. 따라서 가능한 모든 후보 블록들이 동일한 H x V 크기로 상기 탐색 블록에서 형성된다. 그 다음에, 각각의 후보 블록 형성부(21 내지 29)에 생성된 각각의 후보 블록의 픽셀 데이타는 각기 대응하는 블록 매칭부(41 내지 49)로 제공된다.After the search region is determined in the search region forming section 10, the data of the search region is supplied to a plurality of candidate block forming sections, in which only three of the forming sections 21, 22 and 29 are illustrated. Each candidate block forming unit 21, 22, and 29 moves a candidate block, which is the same size as the search block, one pixel at a time in the horizontal direction, starting from the leftmost position at the top through the search area. A candidate block is formed from the search area by moving downwards in the vertical direction one scan line at a time through the search area until the search block reaches the bottom rightmost position in the search area. Thus all possible candidate blocks are formed in the search block with the same H x V size. Then, pixel data of each candidate block generated in each candidate block forming section 21 to 29 is provided to corresponding block matching sections 41 to 49, respectively.

각각의 블록 매칭부(41 내지 49)에서는 블록매칭기법을 이용하여 가변 블록 형성부(100)내 가변블록 선택기(160)에 의해 선택된 확장된 탐색 블록과 각각의 후보 블록 형성부(21 내지 29)로부터의 후보 블록간의 변위를 나타내는 움직임 벡터가 산출되고 그에 대응하는 오차 함수가 계산된다. 통상적으로, 탐색 블록과 후보 블록 내의 픽셀들간의 블록 매칭은 루미넌스 레벨 또는 휘도 레벨로서 행하여 해당 후보 블록의 오차 함수를 산출한다. 오차 함수는 탐색블록과 선택된 후보블록간의 유사성 정도를 나타낸다. 각각의 블록 매칭부(41 내지 49)에 의해 생성된 해당 후보 블록의 움직임 벡터는 각각의 라인(31 내지 39)을 통하여 멀티 플렉서(60)로 제공되며, 각각의 블록 매칭부(41 내지 49)로부터의 모든 오차 함수는 최소 오차 검출기(50)로 공급된다.Each of the block matching units 41 to 49 expands the search block selected by the variable block selector 160 in the variable block forming unit 100 and each candidate block forming unit 21 to 29 using a block matching technique. A motion vector representing the displacement between candidate blocks from is calculated and an error function corresponding thereto is calculated. Typically, block matching between the search block and the pixels in the candidate block is done as a luminance level or luminance level to yield an error function of the candidate block. The error function indicates the degree of similarity between the search block and the selected candidate block. The motion vectors of the corresponding candidate blocks generated by the respective block matching units 41 to 49 are provided to the multiplexer 60 through the respective lines 31 to 39, and the respective block matching units 41 to 49 are provided. All error functions from are fed to the minimum error detector 50.

최소 오차 검출기(50)는 블록 매칭부(41 내지 49)로부터 제공된 오차 함수들을 비교하여 최소 오차를 갖는 하나의 오차 함수를 선택한다. 최소 오차 검출기(50)는 최소 오차 함수를 수반하는 후보 블록을 지정하는 선택 신호를 움직임 벡터 선택기(60)로 출력한다.The minimum error detector 50 compares the error functions provided from the block matching units 41 to 49 to select one error function having the minimum error. The minimum error detector 50 outputs a selection signal to the motion vector selector 60 that specifies a candidate block involving the minimum error function.

멀티플렉서로 구현될 수도 있는 움직임 벡터 선택기(60)는 통상적인 상기 선택 신호에 응답하여 상기 각각의 후보 블록 형성부로부터의 움직임 벡터로부터 상기 최소 오차 함수에 대응하는 후보 블록의 움직임 벡터를 선택한다. 상기 기술한 바와 같이, 후보 블록이 최소 오차 함수를 갖는다면, 그 후보 블록은 탐색 블록에 가장 유사한것이며, 따라서 그 후보 블록의 움직임 벡터가 원하는 움직임 벡터로서 선택된다.The motion vector selector 60, which may be implemented as a multiplexer, selects the motion vector of the candidate block corresponding to the minimum error function from the motion vector from each candidate block forming section in response to the conventional selection signal. As described above, if the candidate block has a minimum error function, the candidate block is most similar to the search block, and thus the motion vector of the candidate block is selected as the desired motion vector.

이와 관련하여, 송신기 및 수신기에서 수행되는 움직임 보상은, 탐색블록과 후보블록간의 움직임 변위를 정확하게 검출할 목적을 사용된 확장 블록 대신에, 원래의 탐색 블록에 대하여 수행된다. 또한, 비록 도시되거나 설명되지는 않았지만, 본 기술분야에서 명백한 바와같이, 확장블록의 범위에 대한 정보는 후보블록 형성부들로 제공된다.In this regard, the motion compensation performed at the transmitter and the receiver is performed on the original search block instead of the extension block used for the purpose of accurately detecting the motion displacement between the search block and the candidate block. Also, although not shown or described, as is apparent in the art, information on the extent of the extended block is provided to the candidate block forming portions.

그러므로, 본 발명에 따르면, 블록 단위 움직임 추정시 현재 프레임내 물체가 몇개의 인접 블록들에 걸쳐서 에지가 없거나 혹은 약간의 에지를 갖는 평이한 영상 패턴을 갖는 탐색 블록을 에지가 포함될 때 까지 확장하여 그레이 레벨의 변화를 가져다줌으로써 보다 정확한 움직임 벡터가 구해질 수 있는 효과가 있다.Therefore, according to the present invention, in the block-by-block motion estimation, the gray level is extended by extending a search block having an edge with a plain image pattern having no edge or a few edges over several adjacent blocks until an edge is included. By bringing the change of, more accurate motion vector can be obtained.

Claims (2)

현재 프레임의 탐색 블록과 이전 프레임의 탐색 영역내 각각의 후보블록간의 움직임 벡터들을 블록매칭 움직임 추정 기법을 이용하여 검출하는 움직임 벡터 검출장치에 있어서, 상기 현재 프레임내에서 물체의 에지 영역이 없는 평이한 영상 패턴을 갖는 탐색블록을 확장하는 수단; 상기 확장된 탐색 블록을 각각의 후보블록들에 대하여 움직임 추정을 행하여 각각의 움직임 벡터 및 상기 움직임 벡터에 대응하는 오차함수를 발생하는 블록 매칭 수단; 상기 오차함수들을 비교하여 최소 오차를 갖는 하나의 오차함수를 선택하고, 상기 선택된 최소 오차함수에 대응하는 후보블록을 지정하는 선택신호를 발생하는 최소 오차 검출 수단; 상기 선택신호에 대응하는 후보블록에 대한 움직임 벡터를 선택적으로 출력하는 움직임 벡터 선택 수단을 포함하는 것을 특징으로 하는 가변 블록 매칭 움직임 추적 장치.A motion vector detecting apparatus for detecting motion vectors between a search block of a current frame and each candidate block in a search region of a previous frame by using a block matching motion estimation technique, the motion vector detecting device comprising: a plain image having no edge region of an object in the current frame; Means for expanding a search block having a pattern; Block matching means for performing motion estimation on the candidate blocks for each of the extended search blocks to generate a motion vector and an error function corresponding to the motion vector; Minimum error detection means for selecting one error function having a minimum error by comparing the error functions, and generating a selection signal specifying a candidate block corresponding to the selected minimum error function; And motion vector selection means for selectively outputting a motion vector for a candidate block corresponding to the selection signal. 제1항에 있어서, 상기 탐색 블록 확장 수단은: 상기 탐색 블록의 경계 부분이 에지 영역을 포함할때까지 한 픽셀 단위로 상기 탐색 블록을 수평 및 수직 방향으로 확장하여 각각의 확장된 블록들을 생성하는 수단; 각각의 상기 확장된 블록들에 대한 분산값들을 계산하는 수단; 상기 각각의 분산값들과 기설정된 임계값을 비교하여 상기 기설정된 임계값보다 적은 하나의 분산값을 선택하는 수단으로, 상기 기설정된 임계값은 상기 탐색 블록의 분산값보다 크되, 가장 근사한 값인 상기 수단; 상기 선택된 분산값의 선택에 응답하여 그에 대응하는 하나의 확장된 블록을 상기 확장된 탐색블록으로서 상기 움직임 추정 수단으로 제공하는 수단을 포함하는 가변 블록 매칭 움직임 추정 장치.2. The apparatus of claim 1, wherein the search block expansion means comprises: generating the respective extended blocks by extending the search block in a horizontal and vertical direction by one pixel until a boundary portion of the search block includes an edge region. Way; Means for calculating variance values for each of the extended blocks; Means for comparing the respective variances with a predetermined threshold to select one variance less than the predetermined threshold, wherein the predetermined threshold is greater than the variance of the search block, the closest value being Way; Means for providing one extended block corresponding thereto in response to the selection of the selected variance value as the extended search block to the motion estimation means.
KR1019950003961A 1995-02-28 1995-02-28 Method and apparatus for detecting a motion vector of a variable block based on a block matching algorithm KR0174451B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950003961A KR0174451B1 (en) 1995-02-28 1995-02-28 Method and apparatus for detecting a motion vector of a variable block based on a block matching algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950003961A KR0174451B1 (en) 1995-02-28 1995-02-28 Method and apparatus for detecting a motion vector of a variable block based on a block matching algorithm

Publications (2)

Publication Number Publication Date
KR960033125A KR960033125A (en) 1996-09-17
KR0174451B1 true KR0174451B1 (en) 1999-03-20

Family

ID=19408917

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950003961A KR0174451B1 (en) 1995-02-28 1995-02-28 Method and apparatus for detecting a motion vector of a variable block based on a block matching algorithm

Country Status (1)

Country Link
KR (1) KR0174451B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040022697A (en) * 2002-09-09 2004-03-16 한국전자통신연구원 Apparatus for estimating motion for compressing image data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040022697A (en) * 2002-09-09 2004-03-16 한국전자통신연구원 Apparatus for estimating motion for compressing image data

Also Published As

Publication number Publication date
KR960033125A (en) 1996-09-17

Similar Documents

Publication Publication Date Title
US5561475A (en) Variable block matching motion estimation apparatus
US5686973A (en) Method for detecting motion vectors for use in a segmentation-based coding system
US5748247A (en) Refinement of block motion vectors to achieve a dense motion field
CN1110204C (en) Apparatus for estimating motion vactors for feature points of video signal
US5694487A (en) Method and apparatus for determining feature points
KR100197368B1 (en) Apparatus for restoring error of image data
KR0171154B1 (en) Method and apparatus for encoding video signals using feature point based motion prediction
US5754237A (en) Method for determining motion vectors using a hierarchical motion estimation
KR19990074806A (en) Texture Padding Apparatus and its Padding Method for Motion Estimation in Parallel Coding
JPH1175204A (en) Motion vector detector
KR20050012766A (en) Unit for and method of estimating a motion vector
KR100204478B1 (en) Method of and apparatus for compensating the vacant space of image frames incurred by global motion
KR20040049214A (en) Apparatus and Method for searching motion vector with high speed
US5808685A (en) Block matching motion estimation apparatus employing a weight function
KR0181029B1 (en) Apparatus for selecting a feature point by using edge
KR0174451B1 (en) Method and apparatus for detecting a motion vector of a variable block based on a block matching algorithm
KR19980036073A (en) Motion vector detection method and apparatus
KR0178230B1 (en) Image processing system using a feature point-based motion estimation
EP0720384B1 (en) Block matching motion estimation apparatus employing a weight function
JP4140091B2 (en) Image information conversion apparatus and image information conversion method
CN1129322C (en) Variable block matching motion estimation apparatus
JPH1175203A (en) Motion vector detector
US20180220132A1 (en) Encoder, decoder, and encoding/decoding processing method
KR0174446B1 (en) Block matching motion estimation apparatus employing a weighting function
KR0152014B1 (en) Method and apparauts for moving estimation in image data compression

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: 20121019

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20131017

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20141022

Year of fee payment: 17