KR101325795B1 - Method and Apparatus for Decoding Macroblock Data in H.264/AVC - Google Patents

Method and Apparatus for Decoding Macroblock Data in H.264/AVC Download PDF

Info

Publication number
KR101325795B1
KR101325795B1 KR1020060079363A KR20060079363A KR101325795B1 KR 101325795 B1 KR101325795 B1 KR 101325795B1 KR 1020060079363 A KR1020060079363 A KR 1020060079363A KR 20060079363 A KR20060079363 A KR 20060079363A KR 101325795 B1 KR101325795 B1 KR 101325795B1
Authority
KR
South Korea
Prior art keywords
macroblock
current
block
data
decoding
Prior art date
Application number
KR1020060079363A
Other languages
Korean (ko)
Other versions
KR20080017764A (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 KR1020060079363A priority Critical patent/KR101325795B1/en
Publication of KR20080017764A publication Critical patent/KR20080017764A/en
Application granted granted Critical
Publication of KR101325795B1 publication Critical patent/KR101325795B1/en

Links

Images

Classifications

    • 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/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/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

H.264/AVC에서 매크로블록(Macroblock) 데이터의 디코딩 방법 및 디코딩 장치가 개시된다. 본 발명은 H.264/AVC 표준으로 압축된 비트스트림(Bit stream)에서 심볼(symbol)을 디코딩함에 있어, 매크로블록 데이터의 디코딩을 위해 필요한 이웃 블록의 정보 추출 알고리즘을 최적화 하였다. 이에 따라, 매크로블록 디코딩이 보다 간단하고 효율적으로 이루어질 수 있으며, 디코딩을 위해 버퍼(Buffer)에 저장해야 할 매크로블록 데이터의 양을 최소화 할 수 있다. Disclosed are a method and apparatus for decoding macroblock data in H.264 / AVC. In the present invention, in decoding a symbol from a bit stream compressed by the H.264 / AVC standard, an information extraction algorithm of neighboring blocks required for decoding of macroblock data is optimized. Accordingly, macroblock decoding can be made more simply and efficiently, and the amount of macroblock data to be stored in the buffer for decoding can be minimized.

H.264/AVC, 매크로블록, 이웃블록, 픽쳐모드 H.264 / AVC, Macroblock, Neighbor Block, Picture Mode

Description

H.264/AVC에서 매크로블록 데이터의 디코딩 방법 및 디코딩 장치{Method and Apparatus for Decoding Macroblock Data in H.264/AVC}Decoding method and decoding apparatus for macroblock data in H.264 / ACC {Method and Apparatus for Decoding Macroblock Data in H.264 / AVC}

도 1은 본 발명의 일 실시예에 따른 디코딩장치의 블록도,1 is a block diagram of a decoding apparatus according to an embodiment of the present invention;

도 2a 및 도 2b는 본 발명의 일 실시예에 따른 이웃정보제어부의 동작 설명에 제공되는 도면,2A and 2B are views provided to explain an operation of a neighbor information controller according to an embodiment of the present invention;

도 3은 현재 블록이 가장자리 블록이 아닌 경우에 이웃블록을 선택하는 방법의 설명에 제공되는 도면,3 is a view provided to explain a method of selecting a neighboring block when the current block is not an edge block;

도 4는 현재 블록이 가장자리 블록이면서, 현재 매크로블록이 mbaff가 아닌 경우에 이웃블록을 선택하는 방법의 설명에 제공되는 도면, 4 is a view provided to explain a method of selecting a neighboring block when the current block is an edge block and the current macroblock is not mbaff;

도 5는 현재 매크로블록이 mbaff이고, 현재 매크로블록과 이웃 매클로블록의 픽쳐 모드가 동일한 경우에 이웃블록을 선택하는 방법의 설명에 제공되는 도면,5 is a diagram provided to explain a method of selecting a neighboring block when a current macroblock is mbaff and a picture mode of a current macroblock and a neighboring macroblock is the same;

도 6은 현재 매크로블록이 mbaff이고, 현재 매크로블록은 프레임 모드이고 이웃 매크로블록은 필드모드인 경우 이웃블록을 선택하는 방법의 설명에 제공되는 도면,6 is a diagram provided to explain a method of selecting a neighboring block when a current macroblock is mbaff, a current macroblock is a frame mode, and a neighboring macroblock is a field mode;

도 7은 현재 매크로블록이 mbaff이고, 현재 매크로블록은 필드 모드이고 이웃 매크로블록은 프레임 모드인 경우 이웃블록을 선택하는 방법의 설명에 제공되는 도면,7 is a diagram provided to explain a method of selecting a neighboring block when a current macroblock is mbaff, a current macroblock is a field mode, and a neighboring macroblock is a frame mode;

도 8은 현재 매크로블록이 mbaff이고, 현재 매크로블록이 매크로블록 페어의 Top 매크로블록인 경우 이웃블록 B를 구하는 방법의 설명에 제공되는 도면,8 is a diagram provided to explain a method of obtaining a neighboring block B when the current macroblock is mbaff and the current macroblock is a Top macroblock of a macroblock pair;

도 9는 현재 매크로블록이 mbaff이고, 현재 매크로블록이 매크로블록 페어의 Bottom 매크로블록인 경우 이웃블록 B를 구하는 방법의 설명에 제공되는 도면, 그리고9 is a diagram provided to explain a method of obtaining a neighboring block B when the current macroblock is mbaff and the current macroblock is a Bottom macroblock of a macroblock pair, and

도 10은 도 1의 버퍼부에 저장되는 데이터를 설명하는데 제공되는 도면이다.FIG. 10 is a view provided to explain data stored in a buffer unit of FIG. 1.

본 발명은, H.264/AVC 표준으로 압축한 비디오 디코더장치 중 비트스트림에서 매크로블록(Macroblock)을 디코딩하는 과정에 필요한 이웃 정보를 효율적으로 관리하고 검색하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법 및 디코딩 장치에 관한 것이다.The present invention provides a method of macroblock data in H.264 / AVC that efficiently manages and retrieves neighbor information necessary for decoding a macroblock in a bitstream among video decoder devices compressed to the H.264 / AVC standard. The present invention relates to a decoding method and a decoding apparatus.

H.264/AVC는 비트 스트림(Bit Stream)내에 심볼(Symbol)을 나타내는 비트 수를 줄이기 위해 VLC(Variable Length Coding) 테이블 선택, CABAC(Context Adaptive Binary Arithmetic Coding) 모델 선택 등 많은 단계에서 이웃 정보를 이용한다. H.264 / AVC uses neighbor information at many stages, such as selecting a Variable Length Coding (VLC) table and selecting a Context Adaptive Binary Arithmetic Coding (CABAC) model to reduce the number of bits representing a symbol in the bit stream. I use it.

H.264/AVC 표준은 16×16 매크로블록(MB: Macro Block), 8×8 luma(Luminance, 휘도신호) 블록, 4×4 luma 블록, 4×4 chroma(Chrominance, 색신호) 블록, 파티션(partition)의 주변 블록 혹은 주변 파티션을 구하는 방법에 대해 각각 상세히 설명하고 있다. 이하 H.264/AVC에 관한 표준인 ISO/IEC 14496-10의 네 번째 버전을 기준으로 설명한다.H.264 / AVC standards include 16 × 16 Macro Blocks (MB), 8 × 8 luma (Luminance) blocks, 4 × 4 luma blocks, 4 × 4 chroma (Chrominance) blocks, and partitions ( Each section describes how to obtain the neighboring blocks or partitions of a partition. The following description is based on the fourth version of ISO / IEC 14496-10, which is a standard for H.264 / AVC.

표준에서는 현재의 매크로블록에 대한 N 방향에 대한 이웃 블록과의 위치 차(Difference of luma location) (xD, yD)를 다음의 표 1과 같이 정의하고 있다. 여기서, N 방향은 방향 A, B, C, D를 포함한다. 표 1을 통해 그 방향을 알 수 있듯이, A는 현재 매크로블록의 좌측방향, B는 상측방향, C는 우상측 방향, D는 좌상측 방향이다. 구하고자 하는 주변 정보 모드가 매크로블록, 블록, 또는 파티션인지에 따라 (xD, yD)로부터 이웃 블록의 위치(xN, yN)을 계산하는 방법을 규정하고 있다. The standard defines a difference of luma location (xD, yD) with neighboring blocks in the N direction with respect to the current macroblock as shown in Table 1 below. Here, the N direction includes directions A, B, C, and D. As shown in Table 1, A is the left direction of the current macroblock, B is the upper direction, C is the upper right direction, and D is the upper left direction. It defines a method of calculating the position (xN, yN) of the neighboring block from (xD, yD) according to whether the peripheral information mode to be obtained is a macroblock, a block, or a partition.

NN xDxD yDyD AA -1-One 00 BB 00 -1-One CC predPartWidthpredPartWidth -1-One DD -1-One -1-One

이웃 블록의 위치(xN, yN)이 정해지면, 현재 프레임의 MBAFF(MacroBlock-Adaptive Frame/Field)/PAFF(Picture Adaptive Frame/Field) 여부, 현재 매크로 블록이 필드(Field) 구조인지 여부, 매크로블록이 매크로블록페어(macroblock pair)에서 탑(Top) 매크로블록인가의 여부에 따라 매크로블록 정보 mbAddrN과 매크로블록 내에서 위치 정보 (xW, yW)가 유도되며 (xW, yW)로부터 해당하는 블록 혹은 파티션의 인덱스(index) 정보를 구할 수 있다.Once the position of the neighboring block (xN, yN) is determined, whether the current frame is a MacroBlock-Adaptive Frame / Field (MBAFF) or Picture Adaptive Frame / Field (PAFF), whether the current macroblock is a field structure, or a macroblock. Depending on whether the macroblock pair is a top macroblock, location information (xW, yW) is derived from the macroblock information mbAddrN and the macroblock, and the corresponding block or partition from (xW, yW). You can get index information of.

이와 같은 종래의 이웃 정보 검출 방법은 다양한 경우를 총망라한 방법으로 필요하지 않는 계산을 수행하고 또 복잡하다. 또 다음 매크로블록의 심볼을 디코딩하기 위해 저장해야 하는 현재 매크로 블록의 데이터에 대해 언급하지 않고 있다. Such a conventional neighbor information detection method is complicated and performs calculations that are not necessary in various ways. It also does not mention the data in the current macroblock that must be stored in order to decode the symbols of the next macroblock.

본 발명의 목적은, H.264/AVC 표준으로 압축된 비트스트림에서 매크로블록(Macroblock)을 디코딩하는 과정에 필요한 이웃 정보를 효율적으로 관리하고 검색하는, H.264/AVC에서 매크로블록 데이터의 디코딩 방법 및 디코딩 장치를 제공함에 있다.SUMMARY OF THE INVENTION An object of the present invention is to decode macroblock data in H.264 / AVC, which efficiently manages and retrieves neighbor information required for decoding a macroblock in a bitstream compressed with the H.264 / AVC standard. A method and a decoding apparatus are provided.

상기 목적을 달성하기 위해 본 발명에 따른 H.264/AVC에서 매크로블록 데이터의 디코딩 방법은 H.264/AVC 표준으로 압축된 비트스트림(Bit stream)을 수신하는 단계, 상기 수신된 비트스트림에 의해 형성되는 4×4 블록을 포함하는 현재 매크로블록(MB: Macroblock)의 각 블록의 디코딩과정에서, 인덱스 (x, y)인 현재 블록의 디코딩을 위해 필요한 이웃블록 A 및 이웃블록 B 중 적어도 하나에 대한 데이터를, 기 디코딩되어 저장된 매크로블록 데이터 중에서 추출하는 단계 및 상기 추출된 데이터를 기초로, 상기 수신된 비트스트림로부터 상기 현재 블록에 대한 디코딩을 수행하여 상기 현재 매크로블록 데이터를 파싱(parsing)하는 단계를 포함한다.In order to achieve the above object, a method of decoding macroblock data in H.264 / AVC according to the present invention comprises: receiving a bitstream compressed by the H.264 / AVC standard, by the received bitstream In the decoding process of each block of the current macroblock (MB: Macroblock) including the formed 4x4 block, at least one of the neighboring block A and the neighboring block B necessary for decoding the current block having the index (x, y). Extracting data from the pre-decoded and stored macroblock data, and parsing the current macroblock data by performing decoding on the current block from the received bitstream based on the extracted data. Steps.

이하에서는, 도면을 참조하여 본 발명을 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the drawings.

도 1은 본 발명의 일 실시예에 따른 디코딩 장치의 블록도이다. 1 is a block diagram of a decoding apparatus according to an embodiment of the present invention.

본 발명의 디코딩장치(100)는 H.264/AVC 표준으로 압축된 영상신호인 비트 스트림(bit stream)을 수신하여 소정의 이웃정보를 기초로 데이터를 디코딩하여 출력한다. 본 발명의 디코딩장치(100)는 H.264/AVC 표준으로 압축된 비트스트림에서 심볼(symbol)을 디코딩하는 과정에 필요한 이웃 정보를 효율적으로 관리하고 검색한다. The decoding apparatus 100 of the present invention receives a bit stream, which is a video signal compressed by the H.264 / AVC standard, decodes and outputs data based on predetermined neighbor information. The decoding apparatus 100 of the present invention efficiently manages and retrieves neighbor information necessary for decoding a symbol in a bitstream compressed by the H.264 / AVC standard.

본 발명에 대한 이하의 설명에 있어, 따로 설명되지 않은 부분은 H.264/AVC에 관한 표준인 ISO/IEC 14496-10에 의해 보충될 수 있다.In the following description of the invention, parts not described otherwise may be supplemented by ISO / IEC 14496-10, which is a standard for H.264 / AVC.

H.264/AVC는 방향에 따라 A, B, C, D 총 4개의 이웃 정보를 정의하고, 압축하는 픽쳐(picture)의 모드, 매크로블록(MB: Macroblock) 모드, 블록 위치에 따라 이웃 정보를 선택한다. 그리고 매크로 블록의 데이터 일부를 시간적으로 후에 오는 다음 매크로 블록의 심볼을 디코딩하기 위해 저장한다. 본 발명의 디코딩장치(100)는 매크로블록에 포함된 데이터 중 필요한 데이터만을 효율적으로 저장하고 간단히 이웃 정보를 선택할 수 있다. 나아가, 디코딩장치(100)는 매크로 블록 내 모든 블록의 데이터를 저장하는 것이 아니라 필요한 블록에 대해서만 데이터를 저장하여 버퍼 사이즈를 줄인다.H.264 / AVC defines four neighbor information, A, B, C, and D, depending on the direction, and the neighbor information according to the picture mode, macroblock (MB) mode, and block position to compress. Choose. A portion of the data of the macro block is then stored for decoding the symbols of the next macro block that comes later in time. The decoding apparatus 100 of the present invention can efficiently store only necessary data among data included in a macroblock and simply select neighbor information. Furthermore, the decoding apparatus 100 reduces the buffer size by storing data only for necessary blocks instead of storing data of all blocks in the macro block.

도 1을 참조하면, 디코딩장치(100)는 입력되는 비트스트림에서 매크로블록 데이터를 디코딩하는 MB데이터파서부(MB data parser)(110), MB데이터파서부(110) 에서 필요한 이웃 정보를 처리하는 이웃정보제어부(130), 이웃 정보를 저장하는 버퍼(Buffer)부(150)를 포함한다.Referring to FIG. 1, the decoding apparatus 100 processes an MB data parser 110 that decodes macroblock data from an input bitstream, and processes neighboring information required by the MB data parser 110. The neighbor information controller 130 and a buffer unit 150 storing neighbor information are included.

MB데이터파서부(110)는 H.264/AVC 표준으로 압축되어 입력되는 비트스트림에서 현재 매크로블록(currMB: current Macroblock) 데이터를 디코딩한다. MB데이터파서부(110)는 4×4 블록을 포함하는 현재 매크로블록에 포함된 각 블록의 디코딩 과정에서 이웃하는 블록(이하 '이웃 블록'이라 함)의 정보가 필요한 경우, 이웃정보제어부(130)에 이웃 블록의 데이터를 요청한다. MB데이터파서부(110)가 요청하는 이웃블록에 대한 정보는, H.264 /AVC 에서 비트스트림에서 데이터를 디코딩하기 위해 4×4 블록 크기의 이웃 매크로블록에 대한 정보를 요청하는 것과 비교된다. The MB data parser 110 decodes current macroblock (currMB) data in the input bitstream compressed by the H.264 / AVC standard. If the MB data parser 110 needs information of a neighboring block (hereinafter, referred to as a 'neighbor block') in the decoding process of each block included in the current macroblock including the 4 × 4 block, the neighbor information controller 130 Request data of a neighboring block. The information on the neighboring block requested by the MB data parser unit 110 is compared with requesting information on a neighboring macroblock having a 4 × 4 block size in order to decode the data in the bitstream in H.264 / AVC.

이웃정보제어부(130)는 MB데이터파서부(110)에서 요청하는 데이터 타입과 현재 블록 인덱스(Index)에 근거하여 버퍼부(150)에서 현재 블록의 이웃 블록에 대한 정보인 '이웃 정보'를 읽어 MB데이터파서부(110)에 전송한다. 이웃정보제어부(130)는 H.264 /AVC 에서 제시하는 이웃블록 A, B, C, D 중에서 이웃블록 A와 B에 대한 정보만을 MB데이터파서부(110)에 전송한다. 이에 대하여는 아래에서 자세히 설명한다.The neighbor information controller 130 reads 'neighbor information', which is information about a neighboring block of the current block, from the buffer unit 150 based on the data type requested by the MB data parser 110 and the current block index. The MB data parser 110 transmits the data. The neighbor information controller 130 transmits only the information on the neighbor blocks A and B among the neighbor blocks A, B, C, and D provided by H.264 / AVC to the MB data parser 110. This will be described in detail below.

또한, 이웃정보제어부(130)는 MB데이터파서부(110)가 현재 매크로블록을 디코딩한 데이터에서, 이후에 입력되는 매크로 블록 데이터의 디코딩을 위해 필요한 데이터를 추출하여 버퍼부(150)에 저장한다. In addition, the neighbor information controller 130 extracts data necessary for decoding the macroblock data input after the MB data parser 110 decodes the current macroblock and stores the data in the buffer unit 150. .

버퍼부(150)는 이웃정보에 대응되는 이웃블록의 데이터를 저장한다. 버퍼부(150)는 이웃정보제어부(130)의 요청에 따라 이웃정보를 이웃정보제어부(130)로 제공한다. 버퍼부(150)는 이웃정보를 저장함에 있어, 이웃 매크로블록의 모든 데이터를 저장하지 않고, 한개 매크로블록의 최하측 열과 최우측 행의 데이터만을 저장한다. 버퍼부(150)는 이웃 블록을 선택하기 위해 필요한 파라미터인 현재 픽쳐 모드, 매크로블록 모드 등도 함께 저장하고 있다. The buffer unit 150 stores data of a neighbor block corresponding to the neighbor information. The buffer unit 150 provides the neighbor information to the neighbor information controller 130 according to a request of the neighbor information controller 130. When storing the neighbor information, the buffer unit 150 does not store all data of the neighboring macroblocks, but stores only the data of the lowest column and the rightmost row of one macroblock. The buffer unit 150 also stores a current picture mode, a macroblock mode, and the like, which are parameters required for selecting a neighboring block.

이웃정보제어부(130)가 MB데이터파서부(110)에서 요청하는 데이터 타입과 블록 인덱스(Index)에 근거하여 버퍼부(150)로부터 이웃정보를 선택하는 방법을 다음의 도 2를 참조하여 설명한다. 그리고 도 2의 설명에 기초하여 버퍼부(150)의 동작을 아래에서 다시 설명한다.A method of selecting the neighbor information from the buffer unit 150 based on the data type requested by the MB data parser 110 and the block index will be described with reference to FIG. 2. . The operation of the buffer unit 150 will be described again below based on the description of FIG. 2.

도 2는 본 발명의 일 실시예에 따른 이웃정보제어부의 동작 설명에 제공되는 도면이다. 2 is a view provided to explain the operation of the neighbor information control unit according to an embodiment of the present invention.

도 2의 (a)는 현재 매크로블록에 포함된 임의의 블록의 A방향(좌측 방향) 이웃블록을 구하는 방법에 관한 것이며, 도 2의 (b)는 현재 매크로블록에 포함된 임의의 블록의 B방향(상측 방향) 이웃블록을 구하는 방법에 관한 것이다. 도 2에서 이웃블록 A와 B에 대해서만 도시하고 있는 것은, MB데이터파서부(110)가 실제로 비트스트림으로부터 매크로블록 데이터를 파서함에 있어, 이웃블록 C 또는 D에 대한 정보가 필요 없음에서 기인하며, 이러한 내용이 표준에서 제시되지 않고 있다. 따라서 이웃정보제어부(130)는 표준에 따라 매크로블록 데이터를 파서할 경우 발생할 수 있는 불필요로 한 데이터의 버퍼링 문제 및 불필요한 계산과정을 수행해야 하는 문제를 기본적으로 해결한다. 2 (a) relates to a method of obtaining a neighboring block in the A direction (left direction) of any block included in the current macroblock, and FIG. 2 (b) shows B of any block included in the current macroblock. It relates to a method for obtaining a neighboring block in an upward direction. In FIG. 2, only the neighboring blocks A and B are shown because the MB data parser 110 does not actually need the information about the neighboring block C or D in parsing the macroblock data from the bitstream. This is not presented in the standard. Therefore, the neighbor information controller 130 basically solves the problem of unnecessary data buffering and unnecessary calculation that may occur when parsing macroblock data according to a standard.

이하에서, '현재 블록' 또는 '이웃블록'이라 함은 4×4 휘도신호(luma)블록 또는 색신호(chroma)블록을 의미하고, 매크로블록은 16×16(16개의 블록포함) 휘도신호 또는 색신호 블록, 매크로블록 페어(pair)는 16×32(두 개의 매크로블록 포함) 휘도신호 또는 색신호 블록을 나타낸다. 이하의 설명에서는 '블록'또는, '4×4 블록'을 동일한 의미로 사용한다.Hereinafter, the term 'current block' or 'neighborhood block' means a 4 × 4 luma block or a color signal (chroma) block, and the macroblock is a 16 × 16 (including 16 blocks) luminance signal or color signal. A block and macroblock pair represents a 16 × 32 (including two macroblock) luminance signal or color signal block. In the following description, "block" or "4x4 block" is used in the same sense.

또한, MB데이터파서부(110)가 매크로블록 번호가 mb인 현재 매크로블록(이하 '현재 매크로블록 mb'라 함)에 포함된 인덱스 (x, y)인 블록의 디코딩을 위해 이웃정보제어부(130)에 그 이웃블록에 대한 정보를 요청한 경우, 인덱스 (x, y)인 블록을 '현재 블록'이라 한다. x, y는 4×4 블록을 포함하는 매크로블록에서 현재 블록의 블록 인덱스이다. Also, the neighbor data controller 130 decodes the block having the index (x, y) included in the current macroblock (hereinafter, referred to as 'current macroblock mb') in which the MB data parser 110 has a macroblock number of mb. In the case of requesting information on the neighboring block), a block having an index (x, y) is called a 'current block'. x and y are block indexes of the current block in a macroblock including 4x4 blocks.

mba는 현재 블록의 이웃블록 A를 포함하는 매크로블록의 번호이고, mbb는 현재 블록의 이웃블록 B를 포함하는 매크로블록의 번호이다. mba is the number of the macroblock including the neighboring block A of the current block, and mbb is the number of the macroblock including the neighboring block B of the current block.

xa, ya는 이웃 블록 A가 포함된 매크로블록에서 이웃블록 A의 블록 인덱스, 그리고 xb, yb는 이웃 블록 B가 포함된 매크로블록에서 이웃블록 B의 블록 인덱스이다. 따라서 x, y, xa, ya, xb, yb는 0에서 3까지의 정수가 해당한다. 도 2에서의 모든 연산은 정수(Integer) 연산이다. 여기서, 정수연산이란 각 단계의 연산 결과에서 정수만을 취함을 말한다. 예를 들어 y가 3이고, mb가 5인 경우 y/2+(mb%2)ㅧ2는 1+1ㅧ2=3 이 된다. %는 나눈 나머지 값을 구하는 것으로, 5%2=1 이 된다. xa and ya are block indexes of the neighboring block A in the macroblock including the neighboring block A, and xb and yb are block indexes of the neighboring block B in the macroblock including the neighboring block B. Thus, x, y, xa, ya, xb, and yb correspond to integers from 0 to 3. All operations in FIG. 2 are integer operations. In this case, the integer operation means that only an integer is taken from the operation result of each step. For example, if y is 3 and mb is 5, y / 2 + (mb% 2) ㅧ 2 is 1 + 1 ㅧ 2 = 3. % Is the remainder divided by 5% 2 = 1.

Mode[]는 해당 매크로블록의 픽쳐 모드로서, 인터레이스드(Interlaced) 방식에 따른 필드(Field)모드와 프로그레시브(Progressive)방식에 따른 프레임(Frame) 모드가 있다. mbaff 압축방법에 따를 경우, Mode[mb]는 현재 매크로블록의 모드이 며, mode[mb-2]는 매크로블록의 번호 mb-2인 매크로블록, 즉 현재 매크로블록의 바로 좌측 매크로블록의 모드가 해당할 것이다. Mode[mb-2N]은 매크로블록의 번호 mb-2N인 매크로블록의 픽쳐 모드이다. 여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭(PicWidthInMbs)으로서, 하나의 픽쳐의 매크로블록 열은 N 개의 매크로블록을 포함한다. 다시 말해, N은 이미지의 폭(width)을 16으로 나눠 올림한 수이다.Mode [] is a picture mode of the macroblock, and includes a field mode according to an interlaced method and a frame mode according to a progressive method. According to the mbaff compression method, Mode [mb] is the mode of the current macroblock, and mode [mb-2] is the macroblock number mb-2 of the macroblock, that is, the mode of the macroblock immediately to the left of the current macroblock. something to do. Mode [mb-2N] is a picture mode of a macroblock having the macroblock number mb-2N. Here, N is a width (PicWidthInMbs) of a picture calculated in units of macroblocks, and a macroblock column of one picture includes N macroblocks. In other words, N is the number divided by 16 divided by the width of the image.

도 2를 참조하면, 현재 매크로블록에 포함된 블록의 이웃블록 A 또는 B를 결정함에 있어, 먼저 현재 블록이 현재 매크로블록 mb의 가장자리 블록(Boundary block)인지 여부를 결정한다. 여기서, 가장자리 블록은 해당 매크로블록의 가장 좌측 블록 행(제1행)과 가장 위 블록 열(제1열)에 속하는 블록이다. Referring to FIG. 2, in determining a neighboring block A or B of a block included in a current macroblock, it is first determined whether the current block is an edge block of the current macroblock mb. Here, the edge block is a block belonging to the leftmost block row (first row) and the highest block column (first column) of the macroblock.

이웃 블록을 결정함에 있어, 현재 블록의 좌상점(또는 좌상화소)을 기준으로 현재 블록의 필드(field) 또는 프레임(frame) 모드(mode)에 따라 픽쳐(Picture)의 화소를 재 정렬했을 때 바로 좌측의 화소를 포함하는 블록을 이웃 블록 A, 바로 윗 화소를 포함하는 블록을 이웃 블록 B로 결정한다. 즉, 현재 매크로블록이 필드 모드로서 탑(Top) 필드에 해당한다면 현재 프레임의 Top 필드 영상 데이터에서 이웃 화소가 선택되고, 현재 매크로블록이 바텀(Bottom) 필드이면 Bottom 필드 영상 데이터에서 이웃화소가 선택되며, 프레임 모드인 경우에는 현재 프레임을 프로그레시브 모드로 고려할 때 인접하는 화소를 포함하는 블록이 이웃 블록이다. 이러한 결정하는 방법은 본 발명에서 이웃블록을 결정하는 모든 경우에 적용된다. In determining the neighboring block, when the pixels of the picture are rearranged according to the field or frame mode of the current block with respect to the upper left point (or the upper left pixel) of the current block, The block including the pixel on the left side is determined as the neighboring block A, and the block including the pixel immediately above the neighboring block B. That is, if the current macroblock corresponds to the top field as the field mode, the neighboring pixel is selected from the top field image data of the current frame, and if the current macroblock is the bottom field, the neighboring pixel is selected from the bottom field image data. In the frame mode, when the current frame is considered to be a progressive mode, a block including adjacent pixels is a neighboring block. This method of determining applies to all cases of determining neighboring blocks in the present invention.

도 2의 경우 1(즉, 가장자리 블록이 아닌 경우, 논 바운드리 블록(Non Boundary block)인 경우)에서, 다른 사항을 고려할 필요 없이 현재 블록의 좌상점 화소의 바로 좌측 화소를 포함하는 블록이 이웃 블록 A, 현재 블록의 좌상점 화소의 바로 위 화소를 포함하는 블록이 이웃 블록 B이다. 따라서 이웃블록 A가 포함된 매크로블록은 현재 매크로블록 mb이고, 이웃블록 A의 인덱스는 (x-1, y)가 되고, 이웃블록 B의 인덱스는 (x, y-1)이 된다. 여기서, 경우 1의 설명을 위해 다음의 도 3을 참조한다. In case 1 of FIG. 2 (i.e., if it is not an edge block, if it is a non-boundary block), the block including the immediately left pixel of the upper left pixel of the current block is neighboring without having to consider anything else. The block including the pixel immediately above the upper left pixel of the current block is the neighboring block B. Therefore, the macroblock including the neighboring block A is the current macroblock mb, the index of the neighboring block A is (x-1, y), and the index of the neighboring block B is (x, y-1). Here, reference is made to FIG. 3 for description of case 1. FIG.

도 3은 현재 블록이 가장자리 블록이 아닌 경우에 이웃블록을 선택하는 방법의 설명에 제공되는 도면이다. 3 is a diagram provided to explain a method of selecting a neighboring block when the current block is not an edge block.

도 3에서, 가장 작은 단위 사각형은 4×4 블록을 나타내고, 매크로블록의 휘도신호(luma) 성분은 총 16개(4×4) 블록을 포함한다. 픽쳐가 4:2:0 컬러 포맷일 경우, 한 개의 매크로블록에 대한 색신호(Chrominance) 성분은 4개(2×2) 블록으로 구성된다. In FIG. 3, the smallest unit rectangle represents a 4x4 block, and the luminance signal luma component of the macroblock includes 16 blocks (4x4) in total. When the picture is in 4: 2: 0 color format, the chroma signal component for one macroblock is composed of four (2x2) blocks.

현재 매크로블록에서 휘도신호(luma) 성분의 2번째 행(310), 3번째 행(320), 가장 우측의 블록 행(column)(330) 및 색신호(chroma)의 2번째(340) 블록 행에 대한 이웃 블록 A는 동일한 매크로블록에 속하는 바로 좌측의 블록이 선택된다. 화살표는 현재 블록의 이웃블록을 지시하고, 굵은 선으로 표시된 부분이 이웃블록이다. 유사하게 현재 매크로블록에서 휘도신호(luma)의 2번째 열(350), 3번째 열(360), 가장 하단의 블록 열(370), 색신호(chroma)의 2번째 열(380)에 대한 이웃 블록 B는 동일한 매크로블록에 속하는 바로 위의 블록이 선택된다.In the current macroblock, the second row 310, the third row 320 of the luma component, the rightmost block column 330, and the second 340 block row of the chroma signal are chroma. For the neighboring block A for the neighboring block belonging to the same macroblock is selected immediately. The arrow indicates the neighboring block of the current block, and the portion indicated by the thick line is the neighboring block. Similarly, neighboring blocks for the second column 350, the third column 360, the lowest block column 370 of the luminance signal luma, and the second column 380 of the color signal chroma in the current macroblock. B is the block immediately above belonging to the same macroblock is selected.

다시 도 2를 참조하여 설명한다. Referring again to FIG.

현재 블록이 가장자리 블록이나, 현재 매크로블록이 mbaff에 의한 것인 아닌 경우(경우 2), 이웃 블록 A가 속하는 매크로블록의 번호 mba는 mb-1가 되고, 이웃 블록 A의 인덱스 (xa, ya)는 (3, y)가 된다. 이웃 블록 B가 속하는 매크로블록의 번호 mbb는 mb-N이 되고, 이웃 블록 B의 인덱스 (xb, yb)는 (x, 3)이 된다. If the current block is an edge block or the current macroblock is not due to mbaff (case 2), the number mba of the macroblock to which neighboring block A belongs is mb-1, and the index of the neighboring block A (xa, ya) Becomes (3, y). The number mbb of the macroblock to which the neighboring block B belongs is mb-N, and the index (xb, yb) of the neighboring block B is (x, 3).

또한, 현재 블록이 가장자리 블록이고 현재 매크로블록이 mbaff에 의한 것이라 하더라도, 현재 매크로블록과 이웃 매클로블록의 픽쳐 모드가 동일한 경우의 이웃블록 A를 구하는 경우(경우 2), 이웃 블록 A가 속하는 매크로블록의 번호 mba는 mb-2가 되고, 이웃 블록 A의 인덱스 (xa, ya)는 (3, y)가 된다. Further, even if the current block is an edge block and the current macroblock is caused by mbaff, when the neighboring block A is obtained when the current macroblock and the neighboring macroblock have the same picture mode (case 2), the macro to which the neighboring block A belongs is obtained. The number mba of the block becomes mb-2, and the index (xa, ya) of the neighboring block A becomes (3, y).

여기서, 경우 2의 설명을 위해 다음의 도 4 및 도 5를 참조한다. Here, reference is made to FIGS. 4 and 5 below for description of case 2. FIG.

도 4는 현재 블록이 가장자리 블록이면서, 현재 매크로블록이 mbaff가 아닌 경우에 이웃블록을 선택하는 방법의 설명에 제공되는 도면이고, 도 5는 현재 매크로블록이 mbaff이고, 현재 매크로블록과 이웃 매클로블록의 픽쳐 모드가 동일한 경우에 이웃블록을 선택하는 방법의 설명에 제공되는 도면이다. FIG. 4 is a diagram provided to explain a method of selecting a neighboring block when the current block is an edge block and the current macroblock is not mbaff, and FIG. 5 is a current macroblock as a mbaff, and a current macroblock and a neighbor macro. It is a figure provided for description of the method of selecting a neighboring block when the picture mode of a block is the same.

도 4와 같이 현재 매크로블록이 mbaff가 아닌 경우 이웃 매크로블록도 mbaff가 아니다. 도 4의 (a)에서, 현재 매크로블록의 가장 좌측 행의 블록들(410a, 410b)에 대한 이웃블록 A는, 현재 매크로블록의 좌측 매크로블록(mb-1)의 최우측 행의 블록들(420a,420b)이 되고, 도 4의 (b)에서 현재 매크로블록의 가장 윗열의 블록들(430a,430b)에 대한 이웃블록 B는 현재 매크로블록의 상측 매크로블록(mb-N) 의 가장 아래 열의 블록들(440a,440b)이 된다. If the current macroblock is not mbaff, as shown in FIG. 4, the neighboring macroblock is not mbaff. In (a) of FIG. 4, the neighboring block A for the blocks 410a and 410b of the leftmost row of the current macroblock is the blocks of the rightmost row of the left macroblock mb-1 of the current macroblock ( 420a and 420b, and the neighboring block B for the blocks 430a and 430b of the uppermost column of the current macroblock in FIG. 4B is the lowest column of the upper macroblock mb-N of the current macroblock. Blocks 440a and 440b.

도 5는, 현재 매크로블록이 mbaff이고 필드모드이며, 이웃 매크로블록의 픽쳐모드도 필드모드인 경우로서, 현재 매크로블록 페어의 각 매크로블록(510a, 520a)의 가장 좌측 행의 블록들에 대한 이웃블록 A는, 각 현재 매크로블록의 좌측 매크로블록(530a,540a)의 최우측 행의 블록들이 된다. FIG. 5 illustrates a case in which the current macroblock is mbaff and is in field mode, and the picture mode of the neighboring macroblock is also in field mode. Block A becomes the blocks of the rightmost row of the left macroblocks 530a and 540a of each current macroblock.

다시 도 2를 참조하여, 현재 매크로블록이 mbaff에 의한 것이며, 현재 매크로블록과 이웃 매클로블록의 픽쳐 모드가 서로 다른 경우에 이웃블록 A를 구하는 방법을 설명한다. Referring to FIG. 2 again, a method of obtaining a neighboring block A when the current macroblock is due to mbaff and the picture modes of the current macroblock and the neighboring macroblock are different from each other will be described.

먼저, 도 2의 (a)를 참조하여 이웃블록 A를 구함에 있어, 현재 매크로블록이 프레임 모드이고, 이웃 매크로블록이 필드모드인 경우(경우 3)이다. 다시 말해, Mode[mb] = frame이고, Mode[mb-2] = field인 경우이다. First, referring to (a) of FIG. 2, the neighboring block A is obtained when the current macroblock is in frame mode and the neighboring macroblock is in field mode (case 3). In other words, if Mode [mb] = frame and Mode [mb-2] = field.

경우 3에서, 이웃블록 A가 속하는 매크로블록 mba는 mb-2-(mb%2)가 된다. 그리고 이웃 블록 A의 인덱스 (xa, ya)는 다음의 수학식 1과 같다. In case 3, the macroblock mba to which neighboring block A belongs is mb-2- (mb% 2). The index (xa, ya) of the neighboring block A is shown in Equation 1 below.

Figure 112006059740487-pat00001
Figure 112006059740487-pat00001

Figure 112006059740487-pat00002
Figure 112006059740487-pat00002

경우 3의 예를 도 6을 참조하여 설명한다. An example of case 3 will be described with reference to FIG. 6.

도 6은 현재 매크로블록이 mbaff이고, 현재 매크로블은 프레임 모드이고 이 웃 매크로블록은 필드모드인 경우 이웃블록을 선택하는 방법의 설명에 제공되는 도면이다. FIG. 6 is a diagram provided to explain a method of selecting a neighboring block when a current macroblock is mbaff, a current macroble is a frame mode, and a neighboring macroblock is a field mode.

도 6을 참조하면, 현재 매크로블록 페어(610a,620a)는 Top 매크로블록(610a)과 Bottom 매크로블록(620a)으로 구성된다. 현재 매크로블록 페어(610a,620a)가 프레임 모드이므로, 현재 Top 매크로블록(610a)과 현재 Bottom 매크로블록(620a)의 가장 좌측 행의 각 블록들의 좌상점은 모두 Top 필드의 화소가 된다. 그리고 이웃 매크로블록은 필드모드이므로 이웃 매크로블록 페어(630a,640a) 중 이웃 Top 매크로블록(630a)가 Top 필드 화소를 포함한다. 따라서 현재 Top 매크로블록(610a)과 현재 Bottom 매크로블록(620a)의 가장 좌측 행의 각 블록들의 이웃블록 A는 이웃 매크로블록 페어(630a,640a) 중 Top 필드에 해당하는 Top 매크로필드(630a)에서 구해진다. 이를 수식으로 표현하면 도 2 및 앞의 수학식 1과 같다.Referring to FIG. 6, the current macroblock pairs 610a and 620a include a top macroblock 610a and a bottom macroblock 620a. Since the current macroblock pairs 610a and 620a are in the frame mode, the upper left point of each block of the leftmost row of the current top macroblock 610a and the current bottom macroblock 620a becomes the pixel of the Top field. Since the neighboring macroblock is the field mode, the neighboring top macroblock 630a of the neighboring macroblock pairs 630a and 640a includes the top field pixel. Therefore, the neighbor block A of each of the blocks in the leftmost row of the current top macroblock 610a and the current bottom macroblock 620a is selected from the top macrofield 630a corresponding to the Top field among the neighboring macroblock pairs 630a and 640a. Is saved. If this is expressed as an equation, it is the same as Equation 1 shown in FIG.

다시 도 2의 (a)를 참조하여 이웃블록 A를 구함에 있어, 현재 매크로블록이 필드 모드이고, 이웃 매크로블록이 프레임모드인 경우(경우 4)이다. 다시 말해, Mode[mb] = field이고, Mode[mb-2] = frame인 경우이다. Referring to (a) of FIG. 2 again, the neighboring block A is obtained when the current macroblock is the field mode and the neighboring macroblock is the frame mode (case 4). In other words, Mode [mb] = field and Mode [mb-2] = frame.

경우 4에서, 이웃블록 A가 속하는 매크로블록 mba는 mb-2-(mb%2)+(y/2)가 된다. 그리고 이웃 블록 A의 인덱스 (xa, ya)는 다음의 수학식 2와 같다. In Case 4, the macroblock mba to which the neighboring block A belongs is mb-2- (mb% 2) + (y / 2). And the index (xa, ya) of the neighboring block A is shown in the following equation (2).

Figure 112006059740487-pat00003
Figure 112006059740487-pat00003

if

Figure 112006059740487-pat00004
,
Figure 112006059740487-pat00005
if
Figure 112006059740487-pat00004
,
Figure 112006059740487-pat00005

else,

Figure 112006059740487-pat00006
else,
Figure 112006059740487-pat00006

경우 4의 예를 도 7을 참조하여 설명한다. An example of case 4 will be described with reference to FIG. 7.

도 7은 현재 매크로블록이 mbaff이고, 현재 매크로블은 필드 모드이고 이웃 매크로블록은 프레임 모드인 경우 이웃블록을 선택하는 방법의 설명에 제공되는 도면이다. FIG. 7 is a diagram provided to explain a method of selecting a neighboring block when a current macroblock is mbaff, a current macroble is a field mode, and a neighboring macroblock is a frame mode.

도 7을 참조하면, 현재 매크로블록 페어(710a,720a)는 Top 매크로블록(710a)과 Bottom 매크로블록(720a)로 구성된다. 현재 매크로블록 페어(710a,720a)가 필드 모드이므로, 현재 Top 매크로블록(710a)의 가장 좌측 행의 각 블록들의 좌상점은 모두 Top 필드의 화소가 된다. 반대로 현재 Bottom 매크로블록(720a)의 가장 좌측 행의 각 블록들의 좌상점은 모두 Bottom 필드의 화소가 된다. 그리고 이웃 매크로블록 페어는 프레임 모드이므로, 이웃 매크로블록 페어의 매크로블록(730a,740a)은 각각 Top 필드 화소와 Bottom 필드 화소를 모두 포함한다. 따라서 현재 Top 매크로블록(710a)의 가장 좌측 행의 각 블록들의 이웃블록 A는 이웃 매크로블록 페어(730a,740a) 중 대응되는 Top 필드화소를 포함하는 매크로필드에서 구해진다. Referring to FIG. 7, the current macroblock pairs 710a and 720a include a top macroblock 710a and a bottom macroblock 720a. Since the current macroblock pairs 710a and 720a are in the field mode, the upper left points of the blocks in the leftmost row of the current Top macroblock 710a are all pixels of the Top field. On the contrary, the upper left point of each block of the leftmost row of the current bottom macroblock 720a becomes the pixel of the Bottom field. In addition, since the neighboring macroblock pair is a frame mode, the macroblocks 730a and 740a of the neighboring macroblock pair include both a top field pixel and a bottom field pixel, respectively. Therefore, the neighbor block A of each block of the leftmost row of the current top macroblock 710a is obtained from a macrofield including corresponding Top field pixels among the neighboring macroblock pairs 730a and 740a.

또한, 현재 Bottom 매크로블록(720a)의 가장 좌측 행의 각 블록들의 이웃블록 A는 이웃 매크로블록 페어(730a,740a) 중 대응되는 Bottom 필드화소를 포함하는 매크로필드에서 구해진다. 도 7은 이러한 사항을 표시하고 있으며, 이를 수식으로 표현하면 수학식 2와 같게 된다.In addition, the neighbor block A of each block in the leftmost row of the current bottom macroblock 720a is obtained from a macrofield including corresponding bottom field pixels among the neighboring macroblock pairs 730a and 740a. 7 shows these matters, and this is expressed by Equation 2 below.

이번에는 도 2의 (b)를 참조하여 경우 1 및 2가 아닌 경우에서 이웃블록 B를 구하는 방법을 설명한다. 이웃블록 B를 구하는 방법은 크게 현재 매크로블록이 매크로블록 페어의 Top 매크로블록인지 Bottom 매크로블록인지에 따라 달라진다. This time, a method of obtaining a neighboring block B in cases other than cases 1 and 2 will be described with reference to FIG. The method of obtaining the neighbor block B largely depends on whether the current macroblock is a top macroblock or a bottom macroblock of a macroblock pair.

먼저, 이웃블록 B를 구하는 현재 매크로블록이 매크로블록 페어의 Top 매크로블록인 경우(경우 5)를 설명한다. 경우 5는 다시 현재 매크로블록 페어와 상측 매크로블록 페어가 모두 필드 모드인 경우(경우 5-1)와 그렇지 않은 경우(경우 5-2)로 다시 나누어진다. 다시 말해, Mode[mb] = field이고, Mode[mb-2N] = field인 경우와 그렇지 않은 경우이다. First, a case in which the current macroblock for which the neighboring block B is obtained is the top macroblock of the macroblock pair (case 5) will be described. Case 5 is further subdivided into cases in which both the current macroblock pair and the upper macroblock pair are in field mode (case 5-1) and otherwise (case 5-2). In other words, Mode [mb] = field, Mode [mb-2N] = field, and when it is not.

경우 5-1에서, 이웃블록 B가 속하는 매크로블록 mbb는 mb-2N 이 된다. 경우 5-2에서는, 이웃블록 B가 속하는 매크로블록 mbb는 mb-2N+1 이 된다. 그리고 이웃 블록 B의 인덱스 (xb, yb)는 모두 (x, 3)이 된다. In case 5-1, the macroblock mbb to which the neighboring block B belongs is mb-2N. In case 5-2, the macroblock mbb to which the neighboring block B belongs is mb-2N + 1. The indexes (xb, yb) of the neighboring block B are all (x, 3).

경우 5의 예를 도 8을 참조하여 설명한다. An example of Case 5 is described with reference to FIG.

도 8은 현재 매크로블록이 mbaff이고, 현재 매크로블록이 매크로블록 페어의 Top 매크로블록인 경우 이웃블록 B를 구하는 방법의 설명에 제공되는 도면이다. 8 is a diagram provided to explain a method of obtaining a neighboring block B when the current macroblock is mbaff and the current macroblock is a top macroblock of a macroblock pair.

도 8의 (a)는 현재 매크로블록 페어와 상측 매크로블록 페어가 모두 필드 모드인 경우(경우 5-1)이고, 도 8의 (b)는 현재 매크로블록 페어와 상측 매크로블록 페어가 모두 프레임 모드인 경우(경우 5-2)이다.FIG. 8A illustrates a case in which both the current macroblock pair and the upper macroblock pair are in the field mode (case 5-1), and FIG. 8B illustrates both the current macroblock pair and the upper macroblock pair in frame mode. (Case 5-2).

도 8의 (a)를 참조하면, 현재 매크로블록 페어가 필드 모드이므로 이웃블록 B를 구하고자 하는 Top 매크로블록(830a, 830b)의 최상측 열의 각 블록의 좌상점은 Top 필드 화소에 대응된다. 그리고 상측 매크로블록 페어(810, 820)도 필드모드이므로, Top 필드 화소에 대응되는 것은 상측 Top 매크로블록(810a, 810b)이다. 따라서 Top 매크로블록(830a, 830b)의 최상측 열의 각 블록의 이웃블록 B는 상측 Top 매크로블록(810a, 810b)에서 구해야 하므로, 이웃블록 B가 속하는 매크로블록 mbb는 mb-2N가 되고, 이웃 블록 B의 인덱스 (xb, yb)는 (x, 3)이 된다. Referring to FIG. 8A, since the current macroblock pair is in field mode, the upper left point of each block of the uppermost column of the top macroblocks 830a and 830b for which the neighbor block B is to be obtained corresponds to the top field pixel. Since the upper macroblock pairs 810 and 820 are also in the field mode, the upper top macroblocks 810a and 810b correspond to the top field pixels. Therefore, since the neighboring block B of each block of the top row of the top macroblocks 830a and 830b should be obtained from the upper top macroblocks 810a and 810b, the macroblock mbb to which the neighboring block B belongs becomes mb-2N and the neighboring block. The index (xb, yb) of B becomes (x, 3).

도 8의 (b)를 참조하면, 현재 매크로블록 페어가 프레임 모드이므로 이웃블록 B를 구하고자 하는 Top 매크로블록(860a, 860b)의 최상측 열의 각 블록의 좌상점은 Top 필드 화소에 대응된다. 그리고 상측 매크로블록 페어(840, 850)도 필드모드이므로, Top 필드 화소에 대응되는 것은 상측 Top 매크로블록(840a, 840b) 및 상측 Bottom 매크로브록(850a, 850b)에 모두 존재한다. 따라서 Top 매크로블록(860a, 860b)의 최상측 열의 각 블록의 이웃블록 B인 바로 상측 블록은 상측 Bottom 매크로블록(850a, 850b)에서 구해야 하므로, 이웃블록 B가 속하는 매크로블록 mbb는 mb-2N+1 이 되고, 이웃 블록 B의 인덱스 (xb, yb)는 (x, 3)이 된다. Referring to FIG. 8B, since the current macroblock pair is in frame mode, the upper left point of each block of the top column of the top macroblocks 860a and 860b for which the neighbor block B is to be obtained corresponds to the top field pixel. Since the upper macroblock pairs 840 and 850 are also in the field mode, corresponding to the top field pixels are present in both the upper top macroblocks 840a and 840b and the upper bottom macroblocks 850a and 850b. Therefore, the immediate upper block, which is the neighboring block B of each block of the top row of the top macroblocks 860a and 860b, must be obtained from the upper bottom macroblocks 850a and 850b, so that the macroblock mbb to which the neighboring block B belongs is mb-2N +. 1, and the neighboring index B (xb, yb) becomes (x, 3).

마지막으로, 이웃블록 B를 구하는 방법 중, 현재 매크로블록이 현재 매크로블록 페어의 Bottom 매크로블록인 경우(경우 6)를 도 2의 (b)를 기초로 설명한다. Finally, in the method of obtaining the neighboring block B, the case in which the current macroblock is the bottom macroblock of the current macroblock pair (case 6) will be described based on FIG.

경우 6은, 현재 매크로블록이 mbaff 신택스(syntax) 구조이며, 현재 매크로블록 페어의 Bottom 매크로블록인 경우이다. 이웃블록 B를 구하고자 하는 현재 매크로블록이 Bottom 매크로블록인 경우, 현재 매크로블록의 픽쳐 모드가 중요하다. 즉, 현재 매크로블록의 픽쳐모드가 프레임 모드인 경우(경우 6-1)과 필드 모드인 경우(경우 6-2)에 따라 이웃 상측 매크로블록 mbb가 달라진다. Case 6 is a case in which the current macroblock has an mbaff syntax structure and is a Bottom macroblock of the current macroblock pair. If the current macroblock for which the neighbor block B is to be obtained is a bottom macroblock, the picture mode of the current macroblock is important. That is, the neighboring upper macroblock mbb is different according to the case where the picture mode of the current macroblock is the frame mode (case 6-1) and the field mode (case 6-2).

경우 6-1과 같이 현재 매크로블록이 프레임 모드인 경우, 이웃 블록 B를 포함하는 매크로블록은 현재 매크로블록 페어의 Top 매크로블록이 된다. When the current macroblock is in frame mode as in case 6-1, the macroblock including the neighboring block B becomes the top macroblock of the current macroblock pair.

경우 6-2와 같이 현재 매크로블록이 필드 모드인 경우 현재 매크로블록은 Bottom 필드 화소에 대응되므로, 이웃 블록 B는 경우 6-1과 같이 현재 매크로블록 페어의 Top 매크로블록에서 구할 수 없고, 상측 매크로블록 페어의 Bottom 매크로블록에서 구해야 한다. As in case 6-2, if the current macroblock is in field mode, the current macroblock corresponds to the bottom field pixel. Therefore, neighboring block B cannot be obtained from the top macroblock of the current macroblock pair as in case 6-1. It must be obtained from the bottom macroblock of the block pair.

따라서 경우 6-1에서, 이웃블록 B가 속하는 매크로블록 mbb는 mb-1 이 된다. 경우 6-2에서는, 이웃블록 B가 속하는 매크로블록 mbb는 mb-2N 이 된다. 그리고 이웃 블록 B의 인덱스 (xb, yb)는 모두 (x, 3)이 된다. Therefore, in case 6-1, the macroblock mbb to which the neighboring block B belongs is mb-1. In case 6-2, the macroblock mbb to which the neighboring block B belongs is mb-2N. The indexes (xb, yb) of the neighboring block B are all (x, 3).

경우 6의 예를 도 9를 참조하여 설명한다. An example of case 6 will be described with reference to FIG.

도 9는 현재 매크로블록이 mbaff이고, 현재 매크로블록이 매크로블록 페어의 Bottom 매크로블록인 경우 이웃블록 B를 구하는 방법의 설명에 제공되는 도면이다. FIG. 9 is a diagram provided to explain a method of obtaining a neighboring block B when the current macroblock is mbaff and the current macroblock is a bottom macroblock of a macroblock pair.

도 9의 (a)는 현재 매크로블록이 프레임 모드인 경우(경우 6-1)이고, 도 9의 (b)는 현재 매크로블록이 필드 모드인 경우(경우 6-2)이다.FIG. 9A illustrates a case in which the current macroblock is in frame mode (case 6-1), and FIG. 9B illustrates a case in which the current macroblock is in field mode (case 6-2).

도 9의 (a)를 참조하면, 현재 매크로블록이 프레임 모드이므로 이웃블록 B를 구하고자 하는 Bottom 매크로블록(930a, 930b)의 최상측 열의 각 블록의 좌상점은 Top 필드 화소에 대응된다. 그리고 현재 매크로블록 페어의 Top 매크로블록(920a, 920b)의 최하측 열의 각 블록이 구하고자 하는 이웃블록 B가 된다. Referring to FIG. 9A, since the current macroblock is a frame mode, the upper left point of each block of the uppermost column of the bottom macroblocks 930a and 930b for which the neighboring block B is to be obtained corresponds to the top field pixel. Each block in the lowermost column of the top macroblocks 920a and 920b of the current macroblock pair becomes the neighboring block B to be obtained.

도 9의 (b)를 참조하면, 현재 매크로블록이 필드 모드이므로 이웃블록 B를 구하고자 하는 Bottom 매크로블록(960a, 960b)의 최상측 열의 각 블록의 좌상점은 Bottom 필드 화소에 대응된다. 현재 매크로블록 페어의 Top 매크로블록(950a, 950b)는 Top 필드 화소에 대응되는 것이므로, 여기서는 이웃블록 B를 구할 수 없다. 따라서 상측 Bottom 매크로블록(930a, 930b)에서 이웃블록 B를 구해야 하므로, 도 9의 (b)와 같이 이웃블록 B가 속하는 매크로블록 mbb는 mb-2N 이 되고, 이웃 블록 B의 인덱스 (xb, yb)는 (x, 3)이 된다.Referring to FIG. 9B, since the current macroblock is a field mode, the upper left point of each block of the uppermost column of the bottom macroblocks 960a and 960b for which the neighboring block B is to be obtained corresponds to the bottom field pixel. Since the top macroblocks 950a and 950b of the current macroblock pair correspond to the top field pixels, the neighbor block B cannot be obtained here. Therefore, since the neighboring block B must be obtained from the upper bottom macroblocks 930a and 930b, as shown in FIG. 9B, the macroblock mbb to which the neighboring block B belongs becomes mb-2N, and the indexes of the neighboring block B are indexes (xb, yb). ) Becomes (x, 3).

이상으로, 도 2를 기초로 본 발명에 따라 이웃블록 A 및 B를 구하는 방법을 설명하였으며, 이를 기초로 이웃정보제어부(130)와 버퍼부(150)의 동작을 다시 설명한다. In the above, the method for obtaining neighboring blocks A and B according to the present invention has been described with reference to FIG. 2, and the operation of the neighbor information controller 130 and the buffer unit 150 will be described again based on the method.

이웃정보제어부(130)는, 도 2를 이용하여, 현재 매크로블록의 번호(mb)와 픽쳐모드, 이웃블록을 구하고자 하는 블록의 번호와 이웃하는 매크로블록의 모드를 가지고 해당하는 매크로 블록과 블록 번호를 쉽게 구할 수 있다. The neighbor information controller 130, using FIG. 2, has a macroblock number and a picture mode of the current macroblock, a block number for which a neighbor block is to be obtained, and a neighboring macroblock mode. The numbers are easy to find.

또한, 도 3 내지 도 9를 살펴보면, 현재 매크로블록의 가장자리 블록에 대해 이웃블록으로 선택되는 블록은 각각 매크로블록의 최우측 행과 최하측 열에 포함된 블록임을 알 수 있다. 3 to 9, it can be seen that blocks selected as neighboring blocks for the edge block of the current macroblock are blocks included in the rightmost row and the bottommost column of the macroblock, respectively.

따라서 버퍼부(150)는 MB데이터파서부(110)의 출력 중, 각 매크로블록의 최우측 행과 최하측 열에 해당하는 데이터만을 저장한다. 또한, 이웃블록 A, B는 최대 2번째 상위 매크로 블록 내에 속하므로, 버퍼부(150)는 최대 2N 개의 매크로블록에 대한 데이터를 저장한다. 즉, 효율적인 버퍼부(150)의 크기는 2N이며, 버퍼부(150)에 저장될 매크로블록의 데이터는 최우측 행과 최하측 열에 포함된 블록들 의 데이터만을 저장하게 된다. 다음의 도 10은 버퍼부(150)에 저장되는 데이터를 보인다. Therefore, the buffer unit 150 stores only data corresponding to the rightmost row and the bottommost column of each macroblock among the outputs of the MB data parser 110. In addition, since neighboring blocks A and B belong to a maximum second macroblock, the buffer unit 150 stores data for up to 2N macroblocks. That is, the size of the efficient buffer unit 150 is 2N, and the data of the macroblock to be stored in the buffer unit 150 stores only data of blocks included in the rightmost row and the bottommost column. 10 illustrates data stored in the buffer unit 150.

도 10은 도 1의 버퍼부에 저장되는 데이터를 설명하는데 제공되는 도면이다. FIG. 10 is a view provided to explain data stored in a buffer unit of FIG. 1.

도 10의 (a) 내지 (c)의 매트릭스는 하나의 픽쳐로서, 가로방향으로 N개의 매크로블록을 포함한다.The matrixes of FIGS. 10A to 10C are one picture and include N macroblocks in the horizontal direction.

도 10의 (a)는 mbaff syntax 값이 '0'(즉, mbaff가 아닌 경우)일 때, (b)는 mbaff syntax 값이 '1'이며, 현재 디코딩하고 있는 매크로블록이 Top 매크로블록인 경우일 때, 그리고 (c)는 mbaff syntax 값이 '1'이며, 현재 디코딩하고 있는 매크로블록이 Bottom 매크로블록인 경우일 때 버퍼부(150)에 저장된 전체 데이터를 굵은 선으로 표시하고 있다. (A) of FIG. 10 illustrates a case where the mbaff syntax value is '0' (that is, not mbaff), and (b) indicates that the mbaff syntax value is '1', and the macroblock currently being decoded is the Top macroblock. And (c) indicates that when the mbaff syntax value is '1' and the macroblock currently being decoded is a bottom macroblock, the entire data stored in the buffer unit 150 is indicated by a thick line.

도 10을 참조할 경우, 버퍼부(150)는 현재 매크로블록의 디코딩이 완료될 경우, 매크로블록 번호 mb+1 인 매크로블록(다음 단계로 디코딩될 매크로블록)의 디코딩을 위해, 최대로 매크로블록 번호 mb-2N+1 부터 mb 까지의 매크로블록에 대응되는 데이터를 버퍼링하고, 매크로블록 번호 mb-2N+1 이전의 매크로블록 데이터를 삭제할 수 있다. 따라서 버퍼부(150)는 보다 적은 용량의 메모리를 사용하여 MB데이터파서부(110)가 디코딩하는데 필요한 데이터를 버퍼링할 수 있는 것이다.Referring to FIG. 10, when the decoding of the current macroblock is completed, the buffer unit 150 may maximize the macroblock for decoding of the macroblock having the macroblock number mb + 1 (the macroblock to be decoded in the next step). The data corresponding to the macroblocks mb-2N + 1 to mb can be buffered, and the macroblock data before the macroblock number mb-2N + 1 can be deleted. Accordingly, the buffer unit 150 may buffer data necessary for the MB data parser 110 to decode using less memory.

본 발명은 방법, 디바이스 및 시스템으로 구현될 수 있다. 또한 본 발명이 컴퓨터 소프트웨어로 구현될 때는, 본 발명의 구성요소는 필요한 동작의 수행에 필요한 코드 세그먼트(code segment)로 대치될 수 있다. 프로그램이나 코드 세그먼트 는 마이크로프로세서에 의해 처리될 수 있는 매체에 저장될 수 있으며, 전송매체나 통신 네트워크를 통하여 반송파(carrier waves)와 결합된 컴퓨터 데이터로서 전송될 수 있다.The invention can be implemented in methods, devices and systems. In addition, when the present invention is implemented in computer software, the components of the present invention may be replaced with code segments necessary for performing necessary operations. The program or code segment may be stored in a medium that can be processed by a microprocessor and transmitted as computer data coupled with carrier waves via a transmission medium or communication network.

마이크로프로세서에 의해 처리될 수 있는 매체는 전자회로, 반도체 메모리 소자, 롬(ROM), 플래시(Flash) 메모리, EEPROM(Electrically Erasable Programmable Read-Only Memory), 플로피 디스크(Floppy Disk), 광학적 디스크, 하드(Hard) 디스크, 광섬유, 무선 네트워크 등과 같이 정보를 전달하고 저장할 수 있는 것을 포함한다. 또한, 컴퓨터 데이터는 전기적 네트워크 채널, 광섬유, 전자기장, 무선 네트워크 등을 통해 전송될 수 있는 데이터를 포함한다. The media that can be processed by the microprocessor include electronic circuits, semiconductor memory devices, ROMs, flash memory, electrically erasable programmable read-only memory (EEPROM), floppy disks, optical disks, and hard disks. (Hard) Includes the ability to transmit and store information such as disks, fiber optics, wireless networks, and the like. Computer data also includes data that can be transmitted over electrical network channels, optical fibers, electromagnetic fields, wireless networks, and the like.

또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.In addition, although the preferred embodiment of the present invention has been shown and described above, the present invention is not limited to the above-described specific embodiment, the technical field to which the invention belongs without departing from the spirit of the invention claimed in the claims. Of course, various modifications can be made by those skilled in the art, and these modifications should not be individually understood from the technical spirit or the prospect of the present invention.

이상에서 상세히 설명한 바와 같이 본 발명에 따른 이웃 블록정보 저장 및 검색방법에 의하면, H.264/AVC 표준으로 압축된 비트스트림에서 매크로블록(Macroblock)을 디코딩하는 과정에 필요한 이웃 정보를 효율적으로 관리하고 검 색할 수 있다. As described in detail above, according to the method of storing and retrieving neighboring block information according to the present invention, it is possible to efficiently manage neighboring information necessary for decoding a macroblock in a bitstream compressed by the H.264 / AVC standard. You can search.

본 발명의 방법은, 비트스트림으로부터 매크로블록 데이터를 파싱(Parsing)하는데 필요한 데이터만을 버퍼링하도록 함으로써 버퍼를 효율적으로 관리할 수 있다. 다시 말해, 본 발명은 매크로블록 데이터를 파싱하는데 있어, 이웃블록 A, B, C, D가 모두 필요한 것이 아님을 밝히고, 이웃블록 A와 B만으로 매크로블록 데이터를 버퍼링하고 관리할 수 있게 한다. The method of the present invention can efficiently manage the buffers by buffering only the data necessary for parsing the macroblock data from the bitstream. In other words, the present invention reveals that neighboring blocks A, B, C, and D are not all necessary for parsing macroblock data, and buffer and manage macroblock data using only neighboring blocks A and B.

본 발명에 의해 제안된 간단한 검색 알고리즘에 기초하여 보다 효율적이고 개선된 디코딩 성능을 기대할 수 있다.Based on the simple search algorithm proposed by the present invention, more efficient and improved decoding performance can be expected.

Claims (22)

H.264/AVC 표준으로 압축된 비트스트림(Bit stream)을 수신하는 단계;Receiving a bit stream compressed to the H.264 / AVC standard; 상기 수신된 비트스트림에 의해 형성되는 4×4 블록을 포함하는 현재 매크로블록(MB: Macroblock)의 각 블록의 디코딩과정에서, 인덱스 (x, y)인 현재 블록의 디코딩을 위해 필요한 이웃블록 A(상기 현재 블록의 좌측 방향의 이웃하는 블록) 및 이웃블록 B(상기 현재 블록의 상측 방향의 이웃하는 블록) 중 적어도 하나에 대한 데이터를, 기 디코딩되어 저장된 매크로블록 데이터 중에서 추출하는 단계; 및In the decoding process of each block of the current macroblock (MB: Macroblock) including the 4 × 4 block formed by the received bitstream, the neighboring block A (necessary for decoding the current block having an index (x, y)) ( Extracting data of at least one of a neighboring block in a left direction of the current block) and a neighboring block B (neighboring block in an upper direction of the current block) from previously decoded and stored macroblock data; And 상기 추출된 데이터를 기초로, 상기 수신된 비트스트림로부터 상기 현재 블록에 대한 디코딩을 수행하여 상기 현재 매크로블록 데이터를 파싱(parsing)하는 단계;를 포함하여 이루어지는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.Parsing the current macroblock data by decoding the current block from the received bitstream based on the extracted data. Decoding method. 제1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 블록이 MBAFF(MacroBlock-Adaptive Frame/Field) 모드에 따른 상기 현재 매크로블록의 가장 좌측 행에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록이 프레임(frame) 모드 데이터이고, 매크로블록의 번호가 mb-2인 매크로블록이 필드 모드 데이터인 경우, The current block is included in the leftmost row of the current macroblock according to MBAFF (MacroBlock-Adaptive Frame / Field) mode, the current macroblock whose number of macroblocks is mb is frame mode data, and the macroblock If the macroblock whose number is mb-2 is field mode data, 매크로블록 번호 mba인 매크로블록에 포함된 인덱스 (xa,ya)인 블록을 상기 이웃블록 A로서 추출하되, Extracting the block having the index (xa, ya) included in the macroblock with the macroblock number mba as the neighboring block A, 상기 mba, xa, ya는 각각 정수(Integer)연산에 의한Mba, xa, and ya are each represented by an integer operation. mba = mb-2-(mb%2), mba = mb-2- (mb% 2), xa=3, xa = 3, ya=y/2 + (mb%2)×2 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein ya = y / 2 + (mb% 2) × 2. 제1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 블록이 MBAFF 모드에 따른 상기 현재 매크로블록의 가장 좌측 행에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록이 필드 모드 데이터이고, 매크로블록의 번호가 mb-2인 매크로블록은 프레임 모드 데이터인 경우, The current block is included in the leftmost row of the current macroblock according to the MBAFF mode, the current macroblock whose number of macroblocks is mb is field mode data, and the macroblock whose number of macroblocks is mb-2 is a frame. For mode data, 매크로블록 번호 mba인 매크로블록에 포함된 인덱스 (xa,ya)인 블록을 상기 이웃블록 A로서 추출하되, Extracting the block having the index (xa, ya) included in the macroblock with the macroblock number mba as the neighboring block A, 상기 mba, xa, ya는 각각 정수(Integer)연산에 의한Mba, xa, and ya are each represented by an integer operation. mba = mb-2-(mb%2)+y/2, mba = mb-2- (mb% 2) + y / 2, xa=3, xa = 3, ya=y×2 if y<2, else ya=(y-2)×2 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein ya = y × 2 if y <2, else ya = (y-2) × 2. 제1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 블록이 MBAFF 모드에 따른 상기 현재 매크로블록의 가장 좌측 행에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록과 매크로블록의 번호가 mb-2인 매크로블록이 동일하게 필드 모드 또는 프레임 모드 데이터인 경우, The current block is included in the leftmost row of the current macroblock according to the MBAFF mode, and the current macroblock in which the number of the macroblock is mb and the macroblock in which the macroblock number is mb-2 are the same in the field mode or the frame. For mode data, 매크로블록 번호 mba인 매크로블록에 포함된 인덱스 (xa,ya)인 블록을 상기 이웃블록 A로서 추출하되, Extracting the block having the index (xa, ya) included in the macroblock with the macroblock number mba as the neighboring block A, 상기 mba, xa, ya는 각각 정수(Integer)연산에 의한Mba, xa, and ya are each represented by an integer operation. mba= mb-2,mba = mb-2, xa=3,xa = 3, ya=y 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein ya = y. 제1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 블록이 상기 현재 매크로블록의 가장 좌측 행에 포함되고, 상기 현재 매크로블록이 MBAFF 모드에 의한 것이 아닌 경우, If the current block is included in the leftmost row of the current macroblock, and the current macroblock is not due to the MBAFF mode, 매크로블록 번호 mba인 매크로블록에 포함된 인덱스 (xa,ya)인 블록을 상기 이웃블록 A로서 추출하되, Extracting the block having the index (xa, ya) included in the macroblock with the macroblock number mba as the neighboring block A, 상기 mba, xa, ya는 각각 정수(Integer)연산에 의한Mba, xa, and ya are each represented by an integer operation. mba= mb-1,mba = mb-1, xa=3,xa = 3, ya=y 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein ya = y. 제1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 매크로블록이 MBAFF 모드에 따른 Top 매크로블록이고, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록과 매크로블록의 번호가 mb-2N인 매크로블록이 동일하게 필드 모드 데이터인 경우(여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭), The current macroblock is a top macroblock according to the MBAFF mode, the current block is included in the top row of the current macroblock, and the number of the current macroblock and the macroblock in which the number of the macroblock is mb is mb-2N. If the macroblock is the same as the field mode data, where N is the width of the picture calculated in units of macroblocks, 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 추출하되, Extracting the block having the index (xb, yb) included in the macroblock with the macroblock number mbb as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-2N,mbb = mb-2N, xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein yb = 3. 제 1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 매크로블록이 MBAFF 모드에 따른 Top 매크로블록이고, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록과 매크로블록의 번호가 mb-2N인 매크로블록 중 적어도 하나가 프레임 모드 데이터인 경우(여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭), The current macroblock is a top macroblock according to the MBAFF mode, the current block is included in the top row of the current macroblock, and the number of the current macroblock and the macroblock in which the number of the macroblock is mb is mb-2N. If at least one of the macroblocks is frame mode data, where N is the width of the picture calculated in units of macroblocks, 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 추출하되, Extracting the block having the index (xb, yb) included in the macroblock with the macroblock number mbb as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-2N+1,mbb = mb-2N + 1, xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein yb = 3. 제 1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 매크로블록이 MBAFF 모드에 따른 Bottom 매크로블록이고, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록이 프레임 모드 데이터인 경우, When the current macroblock is a Bottom macroblock according to the MBAFF mode, the current block is included in the top column of the current macroblock, and the current macroblock whose number of macroblocks is mb is frame mode data. 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 추출하되, Extracting the block having the index (xb, yb) included in the macroblock with the macroblock number mbb as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-1,mbb = mb-1, xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein yb = 3. 제 1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 매크로블록이 MBAFF 모드에 따른 Bottom 매크로블록이고, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록이 필드 모드 데이터인 경우, When the current macroblock is a Bottom macroblock according to MBAFF mode, the current block is included in the top column of the current macroblock, and the current macroblock whose number of macroblocks is mb is field mode data. 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 추출하되, Extracting the block having the index (xb, yb) included in the macroblock with the macroblock number mbb as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-2N (여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭),mbb = mb-2N (where N is the width of the picture calculated in macroblocks), xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein yb = 3. 제 1항에 있어서,The method of claim 1, 상기 추출하는 단계는, Wherein the extracting comprises: 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 상기 현재 매크로블록이 MBAFF 모드에 의한 것이 아닌 경우, If the current block is included in the top column of the current macroblock, and the current macroblock is not due to the MBAFF mode, 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 추출하되, Extracting the block having the index (xb, yb) included in the macroblock with the macroblock number mbb as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-N (여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭),mbb = mb-N (where N is the width of the picture calculated in macroblocks), xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.A method of decoding macroblock data in H.264 / AVC, wherein yb = 3. 제 1항에 있어서,The method of claim 1, 상기 파싱하는 단계에서 디코딩된 상기 현재 매크로블록 데이터를 저장함으로써, 매크로블록 번호 mb+1 인 매크로블록의 디코딩을 위해, 매크로블록 번호 mb-2N+1 부터 mb 까지의 매크로블록에 대응되는 데이터를 버퍼링하는 단계;를 더 포함하는 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 방법.By storing the current macroblock data decoded in the parsing step, buffering data corresponding to macroblocks from macroblock numbers mb-2N + 1 to mb for decoding a macroblock with macroblock number mb + 1. And decoding the macroblock data in H.264 / AVC. H.264/AVC 표준으로 압축된 비트스트림을 수신하고, 상기 수신된 비트스트림을 디코딩하여 4×4 블록의 매크로블록 데이터를 파싱하되, 파싱하고자 하는 매크로블록인 현재 매크로블록에서 인덱스 (x, y)인 현재 블록의 디코딩을 위해 필요한 이웃블록 A(상기 현재 블록의 좌측 방향의 이웃하는 블록) 및 이웃블록 B(상기 현재 블록의 상측 방향의 이웃하는 블록) 중 적어도 하나에 대한 데이터를 기초로 상기 현재 블록의 디코딩을 수행하여 상기 현재 매크로블록 데이터를 파싱하는 MB데이터파서부;Receive a bitstream compressed in the H.264 / AVC standard, decode the received bitstream to parse 4 × 4 blocks of macroblock data, and index (x, y) in the current macroblock that is the macroblock to be parsed. Based on data of at least one of neighbor block A (neighboring block in the left direction of the current block) and neighbor block B (neighboring block in the upper direction of the current block) necessary for decoding of the current block. An MB data parser configured to parse the current macroblock data by decoding a current block; 기 디코딩되어 파서된 매크로블록들 중 적어도 하나에 대한 데이터가 저장되는 버퍼부; 및A buffer unit for storing data on at least one of the pre-decoded and parsed macroblocks; And 상기 MB데이터파서부의 요청에 따라, 상기 버퍼부에 저장된 매크로블록 데이터 중에서 상기 이웃블록 A 및 이웃블록 B 중 적어도 하나에 대한 데이터를 추출하여 상기 MB데이터파서부로 전달하는 이웃정보제어부;를 포함하여 이루어지는 H.264/AVC에서 매크로블록(Macroblock) 데이터 디코딩 장치.A neighbor information control unit for extracting data for at least one of the neighboring block A and the neighboring block B from the macroblock data stored in the buffer unit and transferring the extracted data to the MB data parser according to the request of the MB data parser; Macroblock data decoding apparatus in H.264 / AVC made. 제 12항에 있어서,13. The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 블록이 MBAFF(MacroBlock-Adaptive Frame/Field) 모드에 따른 상기 현재 매크로블록의 가장 좌측 행에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록이 프레임(frame) 모드 데이터이고, 매크로블록의 번호가 mb-2인 매크로블록이 필드 모드 데이터인 경우, The current block is included in the leftmost row of the current macroblock according to MBAFF (MacroBlock-Adaptive Frame / Field) mode, the current macroblock whose number of macroblocks is mb is frame mode data, and the macroblock If the macroblock whose number is mb-2 is field mode data, 매크로블록 번호 mba인 매크로블록에 포함된 인덱스 (xa,ya)인 블록을 상기 이웃블록 A로서 정하여 상기 버퍼부로부터 추출하되, A block having an index (xa, ya) included in a macroblock having a macroblock number mba is designated as the neighboring block A and extracted from the buffer unit. 상기 mba, xa, ya는 각각 정수(Integer)연산에 의한Mba, xa, and ya are each represented by an integer operation. mba = mb-2-(mb%2), mba = mb-2- (mb% 2), xa = 3, xa = 3, ya = (y/2) + (mb%2)×2 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.A device for decoding macroblock data in H.264 / AVC, wherein ya = (y / 2) + (mb% 2) × 2. 제12항에 있어서,The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 블록이 MBAFF 모드에 따른 상기 현재 매크로블록의 가장 좌측 행에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록이 필드 모드 데이터이고, 매크로블록의 번호가 mb-2인 매크로블록은 프레임 모드 데이터인 경우, The current block is included in the leftmost row of the current macroblock according to the MBAFF mode, the current macroblock whose number of macroblocks is mb is field mode data, and the macroblock whose number of macroblocks is mb-2 is a frame. For mode data, 매크로블록 번호 mba인 매크로블록에 포함된 인덱스 (xa,ya)인 블록을 상기 이웃블록 A로 정하여 상기 버퍼부로부터 추출하되, The block having the index (xa, ya) included in the macroblock with the macroblock number mba is designated as the neighboring block A and extracted from the buffer unit. 상기 mba, xa, ya는 각각 정수(Integer)연산에 의한Mba, xa, and ya are each represented by an integer operation. mba = mb-2-(mb%2)+y/2, mba = mb-2- (mb% 2) + y / 2, xa=3, xa = 3, ya=y×2 if y<2, else ya=(y-2)×2 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.A device for decoding macroblock data in H.264 / AVC, wherein ya = y × 2 if y <2 and else ya = (y-2) × 2. 제 12항에 있어서,13. The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 블록이 MBAFF 모드에 따른 상기 현재 매크로블록의 가장 좌측 행에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록과 매크로블록의 번호가 mb-2인 매크로블록이 동일하게 필드 모드 또는 프레임 모드 데이터인 경우, The current block is included in the leftmost row of the current macroblock according to the MBAFF mode, and the current macroblock in which the number of the macroblock is mb and the macroblock in which the macroblock number is mb-2 are the same in the field mode or the frame. For mode data, 매크로블록 번호 mba인 매크로블록에 포함된 인덱스 (xa,ya)인 블록을 상기 이웃블록 A로서 상기 버퍼부로부터 추출하되, Extracting the block having the index (xa, ya) included in the macroblock with the macroblock number mba from the buffer unit as the neighboring block A, 상기 mba, xa, ya는 각각 정수(Integer)연산에 의한Mba, xa, and ya are each represented by an integer operation. mba= mb-2,mba = mb-2, xa=3,xa = 3, ya=y 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장 치.A device for decoding macroblock data in H.264 / AVC, wherein ya = y. 제 12항에 있어서,13. The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 블록이 상기 현재 매크로블록의 가장 좌측 행에 포함되고, 상기 현재 매크로블록이 MBAFF 모드에 의한 것이 아닌 경우, If the current block is included in the leftmost row of the current macroblock, and the current macroblock is not due to the MBAFF mode, 매크로블록 번호 mba인 매크로블록에 포함된 인덱스 (xa,ya)인 블록을 상기 이웃블록 A로서 상기 버퍼부로부터 추출하되, Extracting the block having the index (xa, ya) included in the macroblock with the macroblock number mba from the buffer unit as the neighboring block A, 상기 mba, xa, ya는 각각 정수(Integer)연산에 의한Mba, xa, and ya are each represented by an integer operation. mba= mb-1,mba = mb-1, xa=3,xa = 3, ya=y 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.A device for decoding macroblock data in H.264 / AVC, wherein ya = y. 제12항에 있어서,The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 매크로블록이 MBAFF 모드에 따른 Top 매크로블록이고, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록과 매크로블록의 번호가 mb-2N인 매크로블록이 동일하게 필드 모드 데이터인 경우(여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭), The current macroblock is a top macroblock according to the MBAFF mode, the current block is included in the top row of the current macroblock, and the number of the current macroblock and the macroblock in which the number of the macroblock is mb is mb-2N. If the macroblock is the same as the field mode data, where N is the width of the picture calculated in units of macroblocks, 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 상기 버퍼부로부터 추출하되, Extracting a block of index (xb, yb) included in a macroblock of macroblock number mbb from the buffer unit as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-2N,mbb = mb-2N, xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.and yb = 3, the apparatus for decoding macroblock data in H.264 / AVC. 제 12항에 있어서,13. The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 매크로블록이 MBAFF 모드에 따른 Top 매크로블록이고, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록과 매크로블록의 번호가 mb-2N인 매크로블록 중 적어도 하나가 프레임 모드 데이터인 경우(여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭), The current macroblock is a top macroblock according to the MBAFF mode, the current block is included in the top row of the current macroblock, and the number of the current macroblock and the macroblock in which the number of the macroblock is mb is mb-2N. If at least one of the macroblocks is frame mode data, where N is the width of the picture calculated in units of macroblocks, 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 상기 버퍼부로부터 추출하되, Extracting a block of index (xb, yb) included in a macroblock of macroblock number mbb from the buffer unit as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-2N+1,mbb = mb-2N + 1, xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.and yb = 3, the apparatus for decoding macroblock data in H.264 / AVC. 제 12항에 있어서,13. The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 매크로블록이 MBAFF 모드에 따른 Bottom 매크로블록이고, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록이 프레임 모드 데이터인 경우, When the current macroblock is a Bottom macroblock according to the MBAFF mode, the current block is included in the top column of the current macroblock, and the current macroblock whose number of macroblocks is mb is frame mode data. 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로 추출하되, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한A block having an index (xb, yb) included in a macroblock with the macroblock number mbb is extracted as the neighboring block B, and the mbb, xb, and yb are each formed by integer operations. mbb= mb-1,mbb = mb-1, xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.and yb = 3, the apparatus for decoding macroblock data in H.264 / AVC. 제 12항에 있어서,13. The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 매크로블록이 MBAFF 모드에 따른 Bottom 매크로블록이고, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 매크로블록의 번호가 mb인 상기 현재 매크로블록이 필드 모드 데이터인 경우, When the current macroblock is a Bottom macroblock according to MBAFF mode, the current block is included in the top column of the current macroblock, and the current macroblock whose number of macroblocks is mb is field mode data. 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 상기 버퍼부로부터 추출하되, Extracting a block of index (xb, yb) included in a macroblock of macroblock number mbb from the buffer unit as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-2N (여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭),mbb = mb-2N (where N is the width of the picture calculated in macroblocks), xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.and yb = 3, the apparatus for decoding macroblock data in H.264 / AVC. 제 12항에 있어서,13. The method of claim 12, 상기 이웃정보제어부는, The neighbor information control unit, 상기 현재 블록이 상기 현재 매크로블록의 가장 위의 열에 포함되고, 상기 현재 매크로블록이 MBAFF 모드에 의한 것이 아닌 경우, If the current block is included in the top column of the current macroblock, and the current macroblock is not due to the MBAFF mode, 매크로블록 번호 mbb인 매크로블록에 포함된 인덱스 (xb,yb)인 블록을 상기 이웃블록 B로서 상기 버퍼부로부터 추출하되, Extracting a block of index (xb, yb) included in a macroblock of macroblock number mbb from the buffer unit as the neighboring block B, 상기 mbb, xb, yb는 각각 정수(Integer)연산에 의한The mbb, xb, and yb are each an integer operation mbb= mb-N (여기서, N은 매크로블록 단위로 계산된 픽쳐의 폭),mbb = mb-N (where N is the width of the picture calculated in macroblocks), xb=x,xb = x, yb=3 인 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.and yb = 3, the apparatus for decoding macroblock data in H.264 / AVC. 제 12항에 있어서,13. The method of claim 12, 상기 이웃정보제어부는 상기 MB데이터파서부가 상기 현재 매크로블록 데이터의 디코딩을 완료한 경우, 디코딩 완료된 상기 현재 매크로블록 데이터를 전달받아 상기 버퍼부로 전달하며, When the MB data parser completes decoding the current macroblock data, the neighbor information controller receives the decoded current macroblock data and delivers the decoded current macroblock data to the buffer unit. 상기 버퍼부는, 디코딩 완료된 상기 현재 매크로블록 데이터를 저장함으로써, 매크로블록 번호 mb+1 인 매크로블록의 디코딩을 위해 매크로블록 번호 mb-2N+1 부터 mb 까지의 매크로블록에 대응되는 데이터를 버퍼링하는 것을 특징으로 하는 H.264/AVC에서 매크로블록 데이터의 디코딩 장치.The buffer unit stores the decoded current macroblock data to buffer data corresponding to macroblocks from macroblock numbers mb-2N + 1 to mb for decoding a macroblock having macroblock number mb + 1. An apparatus for decoding macroblock data in H.264 / AVC.
KR1020060079363A 2006-08-22 2006-08-22 Method and Apparatus for Decoding Macroblock Data in H.264/AVC KR101325795B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060079363A KR101325795B1 (en) 2006-08-22 2006-08-22 Method and Apparatus for Decoding Macroblock Data in H.264/AVC

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060079363A KR101325795B1 (en) 2006-08-22 2006-08-22 Method and Apparatus for Decoding Macroblock Data in H.264/AVC

Publications (2)

Publication Number Publication Date
KR20080017764A KR20080017764A (en) 2008-02-27
KR101325795B1 true KR101325795B1 (en) 2013-11-05

Family

ID=39385033

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060079363A KR101325795B1 (en) 2006-08-22 2006-08-22 Method and Apparatus for Decoding Macroblock Data in H.264/AVC

Country Status (1)

Country Link
KR (1) KR101325795B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10649475B2 (en) 2016-05-16 2020-05-12 Benit M Co., Ltd. Vapor splitter and method for adjusting vapor split ratio

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1009913A (en) * 1910-06-29 1911-11-28 Francis J W Maguire Clamp.
KR20060042732A (en) * 2004-11-10 2006-05-15 삼성전자주식회사 Neighbor information processing apparatus and method in the video decoder and recording medium storing a program to implement thereof
KR20060065013A (en) * 2004-12-09 2006-06-14 삼성전자주식회사 Motion vector operation apparatus and method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1009913A (en) * 1910-06-29 1911-11-28 Francis J W Maguire Clamp.
KR20060042732A (en) * 2004-11-10 2006-05-15 삼성전자주식회사 Neighbor information processing apparatus and method in the video decoder and recording medium storing a program to implement thereof
KR20060065013A (en) * 2004-12-09 2006-06-14 삼성전자주식회사 Motion vector operation apparatus and method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10649475B2 (en) 2016-05-16 2020-05-12 Benit M Co., Ltd. Vapor splitter and method for adjusting vapor split ratio

Also Published As

Publication number Publication date
KR20080017764A (en) 2008-02-27

Similar Documents

Publication Publication Date Title
US20210076051A1 (en) Coding apparatus, coding method, decoding apparatus, and decoding method
US11647190B2 (en) Image coding apparatus, image coding method, image decoding apparatus, image decoding method, and program
US10110899B2 (en) Image coding apparatus, image coding method, and program, and image decoding apparatus, image decoding method, and program
US9363510B2 (en) Scan-based sliding window in context derivation for transform coefficient coding
US9118892B2 (en) Apparatus and method for encoding and decoding moving picture using adaptive scanning
US9813716B2 (en) Video encoder and video encoding method
US20110194613A1 (en) Video coding with large macroblocks
EP1879401A1 (en) Dynamic image encoding method, dynamic image decoding method, and device thereof
WO2012154847A1 (en) Filtering blockiness artifacts for video coding
WO2008027192A2 (en) Methods and apparatus for reduced resolution partitioning
CN112533000B (en) Video decoding method and device, computer readable medium and electronic equipment
US20090304078A1 (en) Variable length decoder and animation decoder therewith
JP5346584B2 (en) Decoding device, decoding method, decoding program, and integrated circuit
JP2014096638A (en) Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program
CN113647104A (en) Inter prediction in geometric partitioning with adaptive region number
US10531125B2 (en) Video compression method and video compressor
KR101325795B1 (en) Method and Apparatus for Decoding Macroblock Data in H.264/AVC
US20220279179A1 (en) Method and device for high-level image segmentation and image encoding/decoding
CN109587502B (en) Method, device, equipment and computer readable storage medium for intra-frame compression
CN109672889B (en) Method and device for constrained sequence data headers
US9219926B2 (en) Image encoding apparatus, image encoding method and program, image decoding apparatus, image decoding method and program
CN114885160A (en) Video encoding and decoding method and device, computer readable medium and electronic equipment
WO2022037464A1 (en) Video decoding method and apparatus, video coding method and apparatus, device, and storage medium
CN110650343B (en) Image encoding and decoding method and device, electronic equipment and system
JP2018125882A (en) Image encoding device, image encoding method and program, image decoding device, and image decoding method and program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee