KR0147954B1 - Classification circuit for motion vectors - Google Patents

Classification circuit for motion vectors

Info

Publication number
KR0147954B1
KR0147954B1 KR1019940018825A KR19940018825A KR0147954B1 KR 0147954 B1 KR0147954 B1 KR 0147954B1 KR 1019940018825 A KR1019940018825 A KR 1019940018825A KR 19940018825 A KR19940018825 A KR 19940018825A KR 0147954 B1 KR0147954 B1 KR 0147954B1
Authority
KR
South Korea
Prior art keywords
range
motion vector
value
setting
shift
Prior art date
Application number
KR1019940018825A
Other languages
Korean (ko)
Other versions
KR960006627A (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 KR1019940018825A priority Critical patent/KR0147954B1/en
Publication of KR960006627A publication Critical patent/KR960006627A/en
Application granted granted Critical
Publication of KR0147954B1 publication Critical patent/KR0147954B1/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/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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • 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
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 매크로 블록의 움직임 벡터를 추정할 때 이용되는 이전 프레임에서의 탐색 범위를 인가되는 움직임벡터의 크기에 따른 빈도 정보에 의해 효율적으로 설정하는데 이용하기 위하여, 발생되는 움직임벡터의 크기에 따라 움직임벡터를 분류하는 회로에 관한 것이다. 본 발명에 따른 움직임벡터 분류회로는 발생되는 모든 움직임벡터가 동일한 비교형태를 가지도록 쉬프트하고, N등분된 범위에 따라 쉬프트된 움직임벡터의 해당 범위값을 추출하는 범위값 추출부; 범위값 추출부로부터 전송되는 범위값을 조합하여 현재 인가되는 움직임벡터가 해당되는 범위를 설정하는 값을 출력하는 범위설정수단; 범위설정수단에서 출력되는 범위 설정값에 의해 상기 N등분된 범위중 해당 범위의 움직임벡터 발생 카운트값을 카운트하는 카운트수단을 포함하도록 구성된다.The present invention uses the motion range according to the generated motion vector in order to efficiently use the search range in the previous frame used when estimating the motion vector of the macroblock by frequency information according to the applied motion vector. It relates to a circuit for classifying vectors. The motion vector classification circuit according to the present invention comprises: a range value extracting unit for shifting all generated motion vectors to have the same comparison form and extracting a corresponding range value of the shifted motion vector according to the N equal range; Range setting means for combining a range value transmitted from the range value extracting unit and outputting a value for setting a range corresponding to the currently applied motion vector; And counting means for counting a motion vector generation count value of the corresponding range among the N equal ranges by the range setting value output from the range setting means.

Description

움직임벡터 분류회로Motion vector classification circuit

제1도는 본 발명에 따른 움직임벡터 분류회로의 일실시예에 대한 블록도이고,1 is a block diagram of an embodiment of a motion vector classification circuit according to the present invention;

제2도는 제1도에 도시된 범위값 추출부로 인가되는 쉬프트 양을 산출하기 위한 회로도이고,FIG. 2 is a circuit diagram for calculating an amount of shift applied to the range value extracting unit shown in FIG.

제3도는 제1도에 도시된 범위값 추출부의 상세 회로도이다.FIG. 3 is a detailed circuit diagram of the range value extracting unit shown in FIG.

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

10 : 탐색범위 선택기 12 : 감산기10: search range selector 12: subtractor

14 : 디코더 20 : 범위값 추출부14: decoder 20: range value extraction unit

21 : 쉬프트 회로 22 : 범위값 추출수단21: shift circuit 22: range value extraction means

30 : 범위설정수단 40 : 카운트수단30: range setting means 40: counting means

본 발명은 움직임벡터를 분류하는 회로에 관한 것으로, 특히 한 영상내에서 발생되는 움직임 벡터들의 크기에 따라 해당되는 탐색범위를 선택적으로 정하기 위하여 발생되는 움직임벡터들의 크기에 따라 움직임 벡터를 분류하는 움직임벡터 분류회로에 관한 것이다.The present invention relates to a circuit for classifying motion vectors. In particular, the present invention relates to a circuit for classifying motion vectors according to the magnitude of motion vectors generated to selectively determine a corresponding search range according to the magnitude of motion vectors generated in an image. It relates to a classification circuit.

일반적으로 영상의 압축 부호화는 구성 형태에 따라 크게 동영상 부호화와 정지영상 부호화로 나눌 수 있다. 그중 동영상 부호화하는 화면간(Interframe) 영상에서 시간적으로 연속된 화면들간의 중복성을 제거함으로써 압축효과를 가진다. 이러한 동영상을 위주로 하는 압축기법은 실시간격으로 움직이는 정보를 전송하기 때문에 정보전달의 신속성과 전달효과가 크다고 할 수 있다. 시간의 중복성을 이용하는 기술들 중에서 가장 널리 이용되는 것은 움직임 보상된 예측기법으로 CCITT H.261에서처럼 동영상 압축 알고리즘의 기본으로 이용된다.In general, compression coding of an image may be classified into a moving picture encoding and a still image encoding according to a configuration form. Among them, a compression effect is obtained by removing redundancy between successive pictures in an interframe video encoding video. Compressor method based on moving images transmits moving information at a real time interval, so it can be said that the speed and speed of information transmission are great. The most widely used techniques using time redundancy are motion-compensated prediction techniques, which are used as the basis for video compression algorithms as in CCITT H.261.

움직임정보에 의해서 얻어지는 부호화 이득과 움직임정보 부호화에 필요한 데이터량은 절충되어져야 한다. 16×16 블록을 움직임보상 기본단위로 정한 것은 이와 같은 절충의 결과이며 16×16 블럭을 매크로 블록이라 한다. 각 매크로 블록의 움직임벡터는 수직방향과 수평방향의 2성분으로 표현되는데, 이러한 매크로 블록의 움직임벡터를 추출하기 위해서는 이전 프레임영상에서 가장 상관성이 높은 매크로블록을 추정하여야 한다. 그러나 이와 같은 추정을 효율적으로 수행하기 위해서는, 이전 프레임영상에 대한 탐색범위(Search Range)가 적합하게 설정되는 것이 필요하다.The coding gain obtained by the motion information and the amount of data required for motion information encoding must be traded off. The designation of 16x16 blocks as the basic unit of motion compensation is the result of such a compromise, and 16x16 blocks are called macroblocks. The motion vector of each macro block is represented by two components, a vertical direction and a horizontal direction. In order to extract the motion vector of the macro block, it is necessary to estimate the most correlated macro block from the previous frame image. However, in order to efficiently perform such estimation, a search range for the previous frame image needs to be appropriately set.

본 발명은 발생되는 움직임 벡터들의 크기에 따른 발생 빈도를 고려하여 이전 프레임영상에 대한 탐색범위를 설정하기 위하여, 발생되는 움직임벡터의 크기에 따라 움직임벡터를 분류하는 움직임벡터 분류회로를 제공하는데 그 목적이 있다.The present invention provides a motion vector classification circuit for classifying a motion vector according to the size of the generated motion vector in order to set a search range for a previous frame image in consideration of the occurrence frequency according to the magnitude of the generated motion vectors. There is this.

상기목적을 달성하기 위하여 본 발명에 따른 움직임벡터 분류회로는, 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세하게 설명하기로 한다.In order to achieve the above object, the motion vector classification circuit according to the present invention will now be described in detail with reference to the accompanying drawings.

우선, 움직임벡터의 크기를 일정하다고 가정하고 내부적으로 4등분하게 되면 각 등분 경계값은 최대값을 '100'으로 하였을 때 다음 표 1과 같다.First, when the size of the motion vector is assumed to be constant and internally divided into 4 equal parts, each equal boundary value is as shown in Table 1 below when the maximum value is '100'.

일반적으로 움직임벡터의 범위를 다음표 2에서와 같이 설정한다면 표 1과 유사한 패턴을 쉽게 찾을 수 있다.In general, if the range of the motion vector is set as shown in Table 2, a pattern similar to Table 1 can be easily found.

따라서 움직임 벡터(MV:Motion Vector)의 탐색범위가 어떤 값을 갖더라도 V12를 기준으로 좌측(또는 우측)으로 쉬프트하게 되면 움직임벡터는 동일한 비교 형태를 갖추게 된다. 예를 들어 움직임벡터의 탐색범위가 16인 경우에 8비트 좌로 쉬프트시키면 움직임벡터의 탐색범위가 4096인 경우와 동일한 비교형태를 갖게 되고, 움직임벡터의 탐색범위가 64인 경우에 6비트 좌로 쉬프트시키면 움직임벡터의 탐색범위가 4096인 경우와 동일한 비교 형태를 갖게 된다. 이 때, 쉬프트 되는 양은 제2도에 도시된 회로도를 통해 구해진다.Therefore, even if the search range of the motion vector (MV: Motion Vector) has any value, when the shift vector is shifted to the left (or right) with respect to V12, the motion vectors have the same comparison form. For example, if the search range of the motion vector is 16, shifting 8 bits to the left has the same comparison form as the search range of the motion vector is 4096. If the search range of the motion vector is 64, shifting to the left 6 bits It has the same comparison form as the case where the search range of the motion vector is 4096. At this time, the shifted amount is obtained through the circuit diagram shown in FIG.

제1도는 본 발명에 따른 움직임벡터 분류회로의 일실시예에 대한 블록도로서, 인가되는 움직임벡터의 크기에 따른 범위값을 N등분된 범위를 기준으로 추출하는 범위값 추출부(20), 범위값 추출부(20)로부터 전송되는 해당 범위값에 의해 N등분된 범위중 현재 인가되는 움직임벡터가 해당되는 범위를 설정하기 위한 범위설정수단(30) 및 범위설정수단(30)으로부터 전송되는 범위설정값에 의해 해당 범위의 움직임벡터 발생 카운트값을 카운트하는 카운트수단(40)으로 구성된다.1 is a block diagram of an embodiment of a motion vector classification circuit according to the present invention. The range value extracting unit 20 extracts a range value according to the magnitude of an applied motion vector based on an N equal range. Range setting means 30 and range setting means 30 for setting the range to which the motion vector currently applied among the range divided by N by the corresponding range value transmitted from the value extraction section 20 and the range setting means 30. And counting means 40 for counting the motion vector generation count value in the corresponding range by the value.

이와 같이 구성된 움직임 벡터 분류회로의 동작은 다음과 같이 이루어진다.The operation of the motion vector classification circuit configured as described above is performed as follows.

우선, 범위값 추출부(20)는 인가되는 쉬프트량에 따라 입력되는 움직임벡터를 쉬프트하고, 쉬프트된 정보를 논리연산하여 해당되는 범위값 S0,S1,S2 정보를 추출한다. 이를 위하여 범위값 추출부(20)는 도 3에 도시된 바와 같이 논리곱소자들로 이루어진 쉬프트회로(21)와 논리합소자들로 이루어진 범위값 검출수단(22)으로 구성되어 동작된다. 제3도를 참조하여 범위값 추출부(20)의 동작을 좀더 상세하게 설명하면 다음과 같다.First, the range value extractor 20 shifts an input motion vector according to the shift amount applied, and logically calculates the shifted information to extract corresponding range values S0, S1, and S2 information. To this end, the range value extractor 20 is configured by a shift circuit 21 composed of logical multiplication elements and a range value detecting means 22 composed of logical sum elements as shown in FIG. The operation of the range value extractor 20 will be described in more detail with reference to FIG. 3 as follows.

즉, 쉬프트 회로(21)는 D8~D0비트로 인가되는 쉬프트량과 [V12:V0]비트로 인가되는 움직임벡터를 비트단위로 논리곱하여 인가되는 쉬프트량만큼 움직임 벡터를 쉬프트하게 되는데, 인가되는 쉬프트량은 8비트로 이루어지고 움직임벡터는 12비트로 이루어지므로 논리곱소자들(G1~G3)을 이용하여 D0에서 D8비트를 V12에서 V4비트까지 비트단위로 차례로 논리곱하고, 논리곱소자들(G4~G6)을 이용하여 D0에서 D8비트를 V11에서 V3비트까지 비트단위로 차례로 논리곱하고, 논리곱소자들(G7~G9)을 이용하여 D8에서 D0 비트를 V10에서 V2 비트까지 비트단위로 차례로 논리곱하여 인가되는 움직임벡터에 대한 쉬프트처리를 한다. 여기서 쉬프트처리단계가 3단계로 구분되어 이루어지는 것을 추출하고자 하는 범위값이 3비트(S0, S1, S2)로 이루어지기 때문이다. 이와 같이 쉬프트 처리된 데이터들은 범위값 추출수단(22)으로 각각 출력된다.That is, the shift circuit 21 shifts the motion vector by the shift amount applied by bitwise multiplying the shift amount applied to the bits D8 to D0 and the motion vector applied to the [V12: V0] bits by the bit unit. Since it consists of 8 bits and the motion vector is composed of 12 bits, the logical multipliers (G1 to G3) are used to logically multiply the bits D0 to D8 bit by bit from V12 to V4 bit by bit, and the logical multipliers (G4 to G6) are Using D0 to D8 bits V11 to V3 bit by bit in turn, and using logical multipliers (G7 ~ G9) to D0 bit by D8 bit by bit from V10 to V2 bit in turn Shift the vector. This is because the range value to extract the shift processing step is divided into three steps is composed of three bits (S0, S1, S2). The shifted data is output to the range value extraction means 22, respectively.

범위값 추출수단(22)은 논리합소자들(G10, G11, G12)로 구성되어 인가된 움직임벡터의 범위값을 추출한다. 즉, 논리합소자(G10)는 쉬프트회로(21)에 구비되어 있는 논리곱소자들(G1~G3)로부터 전송되는 데이터를 논리합한 결과를 S2데이타로 출력하고, 논리합소자(G11)는 쉬프트회로(21)에 구비되어 있는 논리곱소자들(G4~G6)로부터 전송되는 데이터를 논리합한 결과를 S1 데이타로 출력하고, 논리합소자(G12)는 쉬프트회로(21)에 구비되어 있는 논리곱소자들(G7~G9)로부터 전송되는 데이터를 논리합한 결과를 S0 데이타로 출력한다. 이와 같이 범위값 추출수단(22)으로부터 출력되는 범위값이 3비트(S2, S1, S0)인 것은 본 실시예에서 움직임벡터의 크기를 표1에 나타낸 바와 같이 4등분한 경우를 예시하고 있기 때문이다.The range value extracting means 22 is composed of logical sums G10, G11, and G12 to extract the range value of the applied motion vector. That is, the logical sum element G10 outputs the result of logical sum of the data transmitted from the logical multipliers G1 to G3 provided in the shift circuit 21 as S2 data, and the logical sum element G11 outputs the shift circuit ( The result of the logical sum of the data transmitted from the logical multipliers G4 to G6 included in the 21) is output as S1 data, and the logical sum element G12 is the logical multipliers included in the shift circuit 21 ( The result of ORing the data transmitted from G7 to G9) is output as S0 data. The range value output from the range value extracting means 22 as described above is 3 bits (S2, S1, S0) because it illustrates the case where the magnitude of the motion vector is divided into four parts as shown in Table 1 in this embodiment. to be.

표2를 참조하여 좀더 상세하게 설명하면, 움직임벡터의 탐색범위가 16인 경우에, V는 16이 되고, V/2 는 8이 되고, V/4는 4가 되어 V1 과 V0 비트는 오프셋값이 되고, V4,V3,V2 비트가해당 범위값이 되어 출력되는 S2,S1,S0는 인가되는 13비트의 움직임벡터중 V4, V3, V2 비트에 해당된다. 즉, S2=V4, S1=V3, S0=V2에 해당되는 값이 범위값 추출수단(22)로부터 출력된다. 또한, 움직임벡터의 탐색범위가 36인 경우에, V/4는 8이 되므로 오프셋값은 V2,V1,V0에 해당되고 V5,V4,V3비트의 정보가 S2,S1,S0정보로 출력되게 된다.In more detail with reference to Table 2, when the search range of the motion vector is 16, V becomes 16, V / 2 becomes 8, V / 4 becomes 4, and the bits V1 and V0 are offset values. S2, S1, S0 outputted with the V4, V3, and V2 bits being corresponding range values correspond to the V4, V3, and V2 bits among the 13-bit motion vectors. That is, the values corresponding to S2 = V4, S1 = V3, and S0 = V2 are output from the range value extracting means 22. In addition, when the search range of the motion vector is 36, V / 4 becomes 8, so the offset values correspond to V2, V1, and V0, and the information of V5, V4, and V3 bits is output as S2, S1, and S0 information. .

따라서 움직임벡터의 크기에 대한 등분이 변경될 경우에 범위값 추출수단(22)에서 추출되는 범위값의 비트는 다르게 설정될 수 있고, 이에 따라 상술한 쉬프트 회로(21)에서 이루어지는 쉬프트량과 인가되는 움직임벡터간의 논리곱 단계도 다르게 설정될 수 있다.Therefore, when the equality with respect to the size of the motion vector is changed, the bits of the range value extracted by the range value extracting means 22 may be set differently, and accordingly the shift amount applied by the shift circuit 21 described above is applied. The logical AND step between motion vectors may also be set differently.

범위설정수단(30)은 범위값 추출부(20)로부터 해당되는 범위값인 S2,S1,S0정보가 인가되면, 인가된 3비트의 범위값을 논리조합하여 표 1과 같이 4등분된 범위에서 해당 크기에 대응되는 범위를 설정하는 값이 출력한다. 즉, 인가되는 S2,S1,S0 비트정보를 수학식 1과 같이 논리조합하고, 해당 논리조합 결과가 '1'로 얻어진 범위에 현재 인가된 움직임벡터의 크기가 해당되는 범위로 설정하기 위한 데이터를 출력한다When the range setting means 30 receives the corresponding range values S2, S1, and S0 information from the range value extracting section 20, the range setting means 30 logically combines the range values of the applied 3 bits and divides them into four equal ranges as shown in Table 1 below. Outputs a value to set the range corresponding to the size. That is, data for logically combining the applied bit information S2, S1, S0 as shown in Equation 1, and setting the size of the motion vector currently applied to the range where the result of the logical combination is '1' corresponds to the range. Output

수학식 1을 참조하여 예를 들면, 인가된 S2,S1,S0 비트정보를 상술한 4가지 상황으로 각각 논리조합한 결과, S2'S1S0'식으로 논리조합한 결과가 '1'로 얻어지면 현재 인가된 움직임벡터에 대한 크기는 (1/2)Vmax≤ V 〈 (3/4)Vmax에 해당되는 것을 알리는 범위설정 정보가 출력된다.For example, referring to Equation 1, as a result of logical combination of the applied S2, S1, S0 bit information in each of the four situations described above, if the result of logical combination using the expression S2'S1S0 'is obtained as'1', Range setting information indicating that the magnitude of the applied motion vector corresponds to (1/2) V max ≤ V <(3/4) V max is output.

인가되는 S2, S1, S0비트정보에 대해 수학식 1과 같은 논리조합을 수행하기 위하여 범위설정수단(30)은 제1도에 도시된 바와 같이 S2', S1 및 S0를 논리곱하는 논리곱소자(31), 논리곱소자(31)의 출력과 S2를 논리합하는 논리합소자(35), S2',S1 및 S0'를 논리곱하는 논리곱소자(32), S2',S1' 및 S0를 논리곱하는 논리곱소자(33), S2', S1' 및 S0'를 논리곱하는 논리곱소자(34)로 구성된다.In order to perform a logical combination as shown in Equation 1 on the applied S2, S1, S0 bit information, the range setting means 30 logically multiplies the S2 ', S1, and S0 as shown in FIG. 31), the logical OR element 35 for ORing S2 with the output of the logical AND element 31, the logical AND element 32 for ANDing S2 ', S1 and S0', and the logical AND for S0 ', S2', S1 'and S0. The product element 33 is composed of an AND product 34 that logically multiplies S2 ', S1' and S0 '.

이와 같은 구성된 논리소자들(31~35)을 통해 출력되는 데이터는 각 범위별로 할당된 카운터 1, 2, 3, 4(도시되지 않음)를 구비한 카운트수단(40)으로 전송된다.The data output through the configured logic elements 31 to 35 are transmitted to the counting means 40 having counters 1, 2, 3, and 4 (not shown) assigned to each range.

카운트수단(40)은 인가되는 움직임벡터의 범위가 (3/4)Vmax≤ V ≤ Vmax임을 나타내는 범위설정값이 전송되면 카운트를 수행하는 카운터 1(미도시됨), 현재 인가되는 움직임벡터의 범위가 (1/2)Vmax≤ V 〈 (3/4)Vmax임을 나타내는 범위설정값이 전송되면 카운트를 수행하는 카운터 2(미도시됨), 현재 인가되는 움직임벡터의 범위가 (1/4)Vmax≤ V 〈 (1/2)Vmax임을 나타내는 범위설정값이 전송되면 카운트를 수행하는 카운터 3 (미도시됨) 및 현재 인가되는 움직임 벡터의 범위가 0 ≤ V 〈 (1/4)Vmax임을 나타내는 범위설정값이 전송되면 카운트를 수행하는 카운터 4(미도시됨)로 구성되어 동작된다. 즉, 범위설정수단(30)내의 논리소자(35)로부터 출력되는 신호가 '1'이면 카운터 1이 카운트를 수행하고, 논리소자(32)로부터 출력되는 신호가 '1'이면 카운터 2가 카운트를 수행하고, 논리소자(33)로부터 출력되는 신호가 '1'이면 카운터 3이 카운트를 수행하고, 논소자(34)로부터 출력되는 신호가 '1'이면 카운터 4가 카운트를 수행하도록 동작된다. 여기서 카운트를 액티브시키는 '1'데이타는 설계시 다른 값으로 설정될 수 있다.The counting means 40 is a counter 1 (not shown) which performs a count when a range setting value indicating that the range of the applied motion vector is (3/4) V max ≤ V ≤ V max is transmitted, and the motion vector currently applied. When a range setting value is transmitted in which the range of (1/2) V max ≤ V <(3/4) V max is transmitted, a counter 2 (not shown) that performs a count is displayed. 4) When the range setting value indicating that V max ≤ V <(1/2) V max is transmitted, the counter 3 (not shown) which performs the count and the range of the currently applied motion vector are 0 ≤ V <(1 / 4) When the range setting value indicating V max is transmitted, it is configured and operated by a counter 4 (not shown) which performs a count. That is, if the signal output from the logic element 35 in the range setting means 30 is '1', the counter 1 counts. If the signal output from the logic element 32 is '1', the counter 2 counts. If the signal output from the logic element 33 is '1', the counter 3 performs a count. If the signal output from the non-element 34 is '1', the counter 4 is operated to perform a count. Here, the '1' data that activates the count may be set to a different value at design time.

이와 같은 카운트동작에 의하여 카운터 1(미도시됨)의 카운트값이 다른 카운터의 카운트값보다 큰 경우에는 (3/4)Vmax≤ V ≤ Vmax범위에 해당되는 움직임벡터의 발생 빈도가 다른 범위의 발생 빈도보다 큰 것을 의미하고, 카운터 2(미도시됨)의 카운트값이 다른 카운터의 카운트값보다 큰 경우에는 (1/2)Vmax≤ V 〈 (3/4)Vmax범위에 해당되는 움직임벡터의 발생 빈도가 다른 범위의 발생 빈도보다 큰 것을 의미하고, 카운터 3(미도시됨)의 카운트값이 다른 카운터의 카운트값보다 큰 경우에는 (1/4)Vmax≤ V 〈 (1/2)Vmax범위에 해당되는 움직임벡터의 발생 빈도가 다른 범위의 발생 빈도보다 큰 것을 의미하고, 카운터 4(미도시됨)의 카운트값이 다른 카운터의 카운트값보다 큰 경우에는 0 ≤ V 〈 (1/4)Vmax범위에 해당되는 움직임벡터의 발생 빈도가 다른 범위의 발생 빈도보다 큰 것을 의미한다.When the count value of the counter 1 (not shown) is larger than the count value of the other counters by the counting operation, the frequency of occurrence of the motion vector corresponding to the range (3/4) V max ≤ V ≤ V max is different. If the count value of the counter 2 (not shown) is greater than the counter value of the other counters, the frequency is greater than (1/2) V max ≤ V <(3/4) V max. It means that the frequency of occurrence of the motion vector is greater than the frequency of occurrence in other ranges, and when the count value of the counter 3 (not shown) is larger than the count value of the other counter, (1/4) V max ≤ V <(1 / 2) It means that the frequency of occurrence of the motion vector corresponding to the V max range is larger than the frequency of occurrence of the other range, and when the count value of the counter 4 (not shown) is larger than the count value of the other counter, 0 ≤ V <( The frequency of occurrence of the motion vector corresponding to the range of V max is different It means greater than the frequency of occurrence.

카운트수단(40)내의 미도시된 카운터 1, 2, 3, 4의 카운트값은 각각 제2도에 도시된 탐색범위 선택기(10)로 전송되어 최적의 탐색범위를 선택할 수 있도록 한다.The count values of counters 1, 2, 3, and 4 not shown in the counting means 40 are transmitted to the search range selector 10 shown in FIG. 2, respectively, so as to select an optimal search range.

즉, 제2도는 범위값 추출부(20)로 인가되는 쉬프트 양을 산출하기 위한 회로도로서, 카운트수단(40)내의 미도시된 카운터1, 2, 3, 4의 카운트값이 각각 인가되면 최적의 탐색범위를 선택하는 탐색범위 선택기(10), 탐색범위 선택기(10)로부터 출력되는 4비트의 쉬프트 범위코드와 기준값간의 차를 감산하는 감산기(12), 감산기(12)에서 출력되는 차값을 디코딩하여 범위값 추출부(20)로 인가되는 쉬프트량 데이터인 D8~D0를 출력하는 디코더(14)로 구성된다.That is, FIG. 2 is a circuit diagram for calculating the amount of shift applied to the range value extractor 20. When the count values of the counters 1, 2, 3, and 4 which are not shown in the counting means 40 are respectively applied, Decodes the difference value output from the search range selector 10 for selecting the search range, the subtractor 12 for subtracting the difference between the 4-bit shift range code output from the search range selector 10, and the reference value. It consists of the decoder 14 which outputs D8-D0 which are shift amount data applied to the range value extraction part 20. FIG.

이와 같이 구성된 쉬프트 양 산출회로는 카운트수단(40)내의 미도시된 카운터 1, 2, 3, 4로부터 각각 카운트값이 인가되면, 탐색범위 선택기(10)에서 지금까지 발생된 움직임벡터의 빈도수를 측정하고, 측정된 결과에 의하여 최적의 탐색범위를 선택한다. 그리고 선택된 탐색범위에 대응되는 쉬프트범위 코드( 표 2에서와 같은 쉬프트 범위 코드)를 출력한다. 즉, 현재 설정되어 운영되는 움직임벡터의 탐색범위가 16인 상태에서 측정된 움직임벡터의 빈도수가 최대값 미만의 범위에 밀집되어 있는 경우에는 현재 설정되어 있는 탐색범위인 16을 최적의 탐색범위로 선택하고, 이에 대응되는 쉬프트 범위 코드인 '0001'정보를 출력한다. 그러나 측정된 움직임벡터의 빈도수가 최대값 범위에 밀집되어 있는 경우에, 즉, 카운터 1의 값이 가장 큰 값을 갖는 것으로 인식된 경우에, 현재 설정된 16의 범위가 탐색범위로서는 협소한 것이므로 이보다 넓은 32를 최적의 탐색범위로 선택하고 그에 대응되는 쉬프트 범위 코드인 '0010'정보를 출력한다. 이와 같이 탐색범위 선택기(10)로부터 출력된 쉬프트 범위 코드는 감산기(12)로 전송된다.The shift amount calculating circuit configured as described above measures the frequency of the motion vectors generated so far in the search range selector 10 when count values are applied from counters 1, 2, 3, and 4 not shown in the counting means 40, respectively. Then, the optimum search range is selected based on the measured results. A shift range code (shift range code as shown in Table 2) corresponding to the selected search range is output. That is, if the frequency of the motion vectors measured while the search range of the currently-operated motion vector is 16 is concentrated in the range less than the maximum value, the search range 16, which is currently set, is selected as the optimal search range. And outputs '0001' information corresponding to the shift range code. However, if the frequency of the measured motion vector is concentrated in the maximum value range, that is, when the value of the counter 1 is recognized as having the largest value, the range of 16 currently set is narrower as the search range. 32 is selected as the optimal search range and '0010' information corresponding to the shift range code is output. The shift range code output from the search range selector 10 is transmitted to the subtractor 12.

감산기(12)는 탐색범위 선택기(10)에서 출려되는 4비트의 쉬프트 범위 코드와 기준값인 '9'간의 차이값을 출력한다. 여기서 9는 탐색범위 선택기(10)로부터 출력될 수 있는 최대 코드값이다. 출력된 차이값은 디코더(14)로 전송된다. 디코더(14)는 인가된 4비트의 차이값을 9비트로 디코딩하여 범위값 추출부(20)내의 쉬프트회로(21)로 전송한다. 이 때 디코더(14)에서 출력되는 값이 인가되는 움직임벡터애 대한 쉬프량에 해당된다.The subtractor 12 outputs a difference value between the 4-bit shift range code drawn from the search range selector 10 and the reference value '9'. 9 is the maximum code value that can be output from the search range selector 10. The output difference value is transmitted to the decoder 14. The decoder 14 decodes the applied difference of 4 bits into 9 bits and transmits the difference value to the shift circuit 21 in the range value extractor 20. At this time, the value output from the decoder 14 corresponds to the shift amount for the motion vector to be applied.

이상, 상술한 바와 같이 본 발명은 발생되는 움직임벡터의 크기에 따른 빈도수를 파악할 수 있도록 인가되는 움직임벡터의 크기에 따라 움직임벡터를 분류함으로써, 움직임벡터를 추정하기 위하여 이전 프레임에 설정되는 탐색범위를 움직임벡터의 크기에 따라 적용적으로 설정할 수 있게 한다.As described above, the present invention classifies the motion vectors according to the magnitude of the applied motion vectors so as to determine the frequency according to the magnitudes of the generated motion vectors, thereby determining the search range set in the previous frame to estimate the motion vectors. Applicable to the motion vector size.

Claims (5)

인가되는 모든 움직임벡터들에 대하여 최상의 비트를 기준으로 동일한 비교형태를 가질 수 있도록 소정의 쉬프트량만큼 쉬프트시키고, 쉬프트된 움직임벡터에서 N등분에 의한 해당 범위값을 추출하는 범위값 추출부; 상기 범위값 추출로부터 출력되는 범위값을 조합하여 현재 인가되는 움직임벡터가 상기 N등분된 범위중 해당되는 범위를 설정하는 값을 출력하는 범위설정부; 및 상기 N 등분된 범위별로 대응되는 카운터를 구비하고, 상기 범위설정부로부터 전송되는 범위를 설정하는 값에 의하여 현재 인가되는 움직임벡터가 해당되는 범위의 움직임벡터 발생 카운트값을 카운트하는 카운트수단을 포함하는 것을 특징으로 하는 움직임벡터 분류회로.A range value extracting unit which shifts by a predetermined amount of shift so as to have the same comparison form on the basis of the best bit with respect to all applied motion vectors, and extracts a corresponding range value by N equals from the shifted motion vector; A range setting unit for combining a range value output from the range value extraction to output a value for setting a range corresponding to the N equal range of the currently applied motion vector; And counting means having a counter corresponding to each N-divided range, and counting a motion vector generation count value of a range corresponding to a motion vector currently applied by a value for setting a range transmitted from the range setting unit. Motion vector classification circuit, characterized in that. 제1항에 있어서, 상기 범위값 추출부로 인가되는 상기 현재 인가되는 움직임벡터에 대한 비트를 상기 소정의 쉬프트량은 선택된 탐색범위에 대응되는 쉬프트 범위 코드와 '9'와의 차이값을 디코딩한 값으로 결정되는 것을 특징으로 하는 움직임벡터 분류회로.2. The method of claim 1, wherein the predetermined shift amount is a value obtained by decoding a difference value between a shift range code corresponding to a selected search range and '9' for a bit for the currently applied motion vector applied to the range value extractor. Motion vector classification circuit, characterized in that determined. 제1항에 있어서, 상기 범위값 추출부는 상기 현재 인가되는 움직임벡터에 대한 비트를 상기 소정의 쉬프트량에 대한 비트와 비트단위로 논리곱하는 단계를 상기 범위값의 비트수와 동일하게 설정하여 상기 소정의 쉬프트량만큼 현재 인가되는 움직임벡터를 쉬프트하는 쉬프트회로; 및 상기 쉬프트회로에서 출력되는 각 논리곱 단계별 처리결과를 논리합하여 상기 현재 인가되는 움직임벡터의 상기 N등분에 따른 범위값을 추출하는 범위값 추출수단으로 이루어진 것을 특징으로 하는 움직임벡터 분류회로.2. The method of claim 1, wherein the range value extracting unit sets the step of logically multiplying a bit for the currently applied motion vector by the bit for the predetermined shift amount in the same unit as the bit number of the range value. A shift circuit for shifting the currently applied motion vector by the shift amount of? And range value extracting means for extracting a range value corresponding to the N equals of the currently applied motion vector by ORing the result of each logical product step output from the shift circuit. 제1항에 있어서, 상기 범위설정수단은 인가되는 상기 범위값을 논리조합하여 상기 카운트수단내에 구비되어 있는 카운터중 설정된 범위에 해당되는 카운터를 액티브상태로 설정하기 위한 신호를 출력하는 논리소자들로 이루어지는 것을 특징으로 하는 움직임벡터의 크기에 따른 분류회로.2. The logic unit of claim 1, wherein the range setting unit is configured to logically combine the range values applied to output logic signals for setting a counter corresponding to a set range among the counters provided in the counting unit to an active state. Classification circuit according to the size of the motion vector, characterized in that made. 제1항에 있어서, 상기 범위설정수단은 상기 움직임벡터의 범위를 4등분하고, 인가되는 상기 범위값이 S0, S1, S2 인 경우에 인가되는 범위값 S0, S1, S2를 하기 식에 의해 논리조합하고, 논리조합한 결과를 인가되는 움직임벡터의 범위를 설정하는 값으로 출력하는 것을 특징으로 하는 움직임벡터 분류회로.The method according to claim 1, wherein the range setting means divides the range of the motion vector into quadrants, and when the range values to be applied are S0, S1, and S2, the range values S0, S1, S2 to be applied are logically expressed by the following equation. And outputting a result of performing logical combining as a value for setting a range of motion vectors to be applied.
KR1019940018825A 1994-07-30 1994-07-30 Classification circuit for motion vectors KR0147954B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019940018825A KR0147954B1 (en) 1994-07-30 1994-07-30 Classification circuit for motion vectors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940018825A KR0147954B1 (en) 1994-07-30 1994-07-30 Classification circuit for motion vectors

Publications (2)

Publication Number Publication Date
KR960006627A KR960006627A (en) 1996-02-23
KR0147954B1 true KR0147954B1 (en) 1998-09-15

Family

ID=19389472

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940018825A KR0147954B1 (en) 1994-07-30 1994-07-30 Classification circuit for motion vectors

Country Status (1)

Country Link
KR (1) KR0147954B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100397675B1 (en) * 1998-12-16 2004-02-14 제일모직주식회사 Thermoplastic resin composition excellent in heat resistance

Also Published As

Publication number Publication date
KR960006627A (en) 1996-02-23

Similar Documents

Publication Publication Date Title
US5539469A (en) Apparatus for determining motion vectors through the use of an adaptive median filtering technique
KR100530223B1 (en) Frame interpolation method and apparatus at frame rate conversion
US6859499B2 (en) Deblocking filtering apparatus and method
US5596370A (en) Boundary matching motion estimation apparatus
CN1984237A (en) Scene change detector and method thereof
JP2002125233A (en) Image compression system for weighting video contents
KR0181031B1 (en) Apparatus for compensating edge in the motion compensated interpolation
EP0720356B1 (en) Apparatus for determining motion vectors
US7711046B2 (en) Encoding circuit
US5689312A (en) Block matching motion estimation method
KR0181029B1 (en) Apparatus for selecting a feature point by using edge
KR0147954B1 (en) Classification circuit for motion vectors
JP3355964B2 (en) Adaptive orthogonal transform mode determination method
CN1127906A (en) Apparatus for determining motion vectors
JP4140091B2 (en) Image information conversion apparatus and image information conversion method
JP2001346208A (en) Image signal decoder and method
KR0170866B1 (en) Estimation device for moving region
JPH07240927A (en) Video encoder
KR100208984B1 (en) Moving vector estimator using contour of object
KR0160901B1 (en) Boundary matching motion estimatin apparatus
JP3694052B2 (en) Motion vector detection device
JP3377679B2 (en) Coded interlaced video cut detection method and apparatus
KR0174932B1 (en) Apparatus for determining motion vectors
JP3352139B2 (en) Encoding device and method
KR0174939B1 (en) Apparatus for determining motion vectors

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

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20130502

Year of fee payment: 16

EXPY Expiration of term