KR101328931B1 - Video decoder and decoding method - Google Patents

Video decoder and decoding method Download PDF

Info

Publication number
KR101328931B1
KR101328931B1 KR1020060118419A KR20060118419A KR101328931B1 KR 101328931 B1 KR101328931 B1 KR 101328931B1 KR 1020060118419 A KR1020060118419 A KR 1020060118419A KR 20060118419 A KR20060118419 A KR 20060118419A KR 101328931 B1 KR101328931 B1 KR 101328931B1
Authority
KR
South Korea
Prior art keywords
macroblock
intra prediction
pixels
pixel
stored
Prior art date
Application number
KR1020060118419A
Other languages
Korean (ko)
Other versions
KR20080048262A (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 KR1020060118419A priority Critical patent/KR101328931B1/en
Publication of KR20080048262A publication Critical patent/KR20080048262A/en
Application granted granted Critical
Publication of KR101328931B1 publication Critical patent/KR101328931B1/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/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
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

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

Abstract

본 발명은 비디오 복호기 및 복호방법에 관한 것으로서, 본 발명에 따른 복호기는 블록단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 저장하는 저장부, 현재 매크로블록에 대하여 상기 저장부에 저장된 참조화소를 참조하여 화면내 예측을 수행하는 화면내 예측부, 및 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소들을 추출하여 상기 저장부에 저장하고, 상기 저장부에 저장된 화소 가운데 현재 매크로블록의 화면내 예측에 필요한 참조화소를 독출하여 상기 화면내 예측부로 전송하는 참조화소 처리부를 포함한다.The present invention relates to a video decoder and a decoding method, wherein the decoder according to the present invention stores a pixel which is likely to be referred to in intra prediction among pixels reconstructed in units of blocks. An intra prediction unit that performs the intra prediction by referring to the stored reference pixel, and the pixels which are likely to be referred to in the intra prediction among the reconstructed pixels are extracted and stored in the storage unit. And a reference pixel processor for reading a reference pixel necessary for intra prediction of the macroblock and transmitting the same to the intra prediction unit.

따라서, 본 발명에 의하면 메모리를 효율적으로 관리하여 복호를 빠르게 진행할 수 있는 효과가 있다.Therefore, according to the present invention, the memory can be efficiently managed and the decoding can be performed quickly.

H.264/AVC, 화면내 예측 H.264 / AVC, In-Screen Prediction

Description

비디오 복호기 및 복호방법{Video decoder and decoding method}Video decoder and decoding method

도 1은 화면내 예측시 사용되는 휘도/색차 성분에 대한 매크로블록의 종류를 도시한 도면1 is a diagram illustrating types of macroblocks for luminance / color difference components used in intra prediction.

도 2는 H.264/AVC 복호기의 구성을 도시한 블록도2 is a block diagram showing the configuration of an H.264 / AVC decoder;

도 3은 본 발명에 따른 일 실시예로서 H.264/AVC 복호기의 구성을 도시한 블록도3 is a block diagram showing a configuration of an H.264 / AVC decoder as an embodiment according to the present invention.

도 4는 MBAFF가 사용되지 않은 경우에 화면내 예측시 참조되는 참조 매크로블록과 참조 화소를 도시한 도면FIG. 4 is a diagram illustrating a reference macroblock and a reference pixel that are referenced during intra prediction when MBAFF is not used.

도 5는 MBAFF가 사용되지 않은 경우에 화면내 예측시 참조하기 위해 저장할 참조 화소를 도시한 도면FIG. 5 illustrates reference pixels to be stored for reference in intra prediction when MBAFF is not used.

도 6은 MBAFF가 사용되지 않은 경우에 화면내 예측시 주변 매크로블록과의 참조관계를 도시한 도면FIG. 6 is a diagram illustrating a reference relationship with neighboring macroblocks in intra prediction when MBAFF is not used.

도 7은 MBAFF가 사용된 경우에 화면내 예측시 참조되는 매크로블록쌍을 도시한 도면FIG. 7 is a diagram illustrating a macroblock pair referred to in intra prediction when MBAFF is used. FIG.

도 8(a) 내지 8(d)는 MBAFF가 사용된 경우에 화면내 예측시 참조되는 참조 화소 B와 C를 도시한 도면8 (a) to 8 (d) illustrate reference pixels B and C which are referenced during intra prediction when MBAFF is used.

도 9(a) 내지 9(d)는 MBAFF가 사용된 경우에 화면내 예측시 참조되는 참조화 소 D를 도시한 도면9 (a) to 9 (d) illustrate reference pixels D referred to in intra prediction when MBAFF is used.

도 9(e)는 상기 도 9(d)의 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록이 참조하는 참조화소D의 위치를 도시한 도면FIG. 9 (e) illustrates the position of the reference pixel D referenced by the lower macroblock of the macroblock pair for performing the current intra prediction of FIG. 9 (d).

도 10은 MBAFF가 사용된 경우에 화면내 예측시 참조되는 참조 화소 A를 도시한 도면FIG. 10 is a diagram illustrating a reference pixel A referred to during intra prediction when MBAFF is used. FIG.

도 11은 본 발명에 따른 일 실시예로서 비디오 복호방법의 순서를 도시한 순서도11 is a flowchart illustrating a procedure of a video decoding method as an embodiment according to the present invention.

*도면의 주요 부분에 대한 부호의 설명DESCRIPTION OF THE REFERENCE NUMERALS

300 : 엔트로피 복호부 310 : 역양자화/역변환부300: entropy decoding unit 310: inverse quantization / inverse transform unit

320 : 블록 메모리 330 : 참조화소 처리부320: block memory 330: reference pixel processor

340 : 제1메모리 350 : 제2메모리340: First memory 350: Second memory

360 : 화면내 예측부 370 : 디블록킹 필터부360: intra prediction unit 370: deblocking filter unit

380 : 프레임 메모리 390 : 움직임 보상부380 frame memory 390: motion compensation unit

본 발명은 비디오 복호기 및 복호방법에 관한 것으로서, 더욱 자세하게는 비디오 복호기 및 복호방법의 메모리 관리에 관한 것이다. The present invention relates to a video decoder and a decoding method, and more particularly, to the memory management of the video decoder and the decoding method.

최근 통신기술의 눈부신 발전으로 휴대폰, DTV(Digital TV), DMB(Digital Multimedia Broadcasting)등의 디지털 기기가 개발되었다. 이러한 디지털 기기에서 사용되는 데이터로 음성, 정지영상, 동영상 데이터 등이 있는데, 이 가운데 동영상 데이터의 크기는 매우 크다. Recently, due to the remarkable development of communication technology, digital devices such as mobile phones, DTV (Digital TV), and DMB (Digital Multimedia Broadcasting) have been developed. Data used in such a digital device is audio, still image, video data, etc. Among these, the size of the video data is very large.

따라서 데이터의 크기를 줄일 수 있는 동영상 압축 표준들이 개발되었으며, H.261을 시작으로 가장 최근의 H.264/AVC(Advanced Video Coding)까지 많은 발전을 이루었다. Therefore, video compression standards have been developed to reduce the size of data, and many developments have been made from H.261 to the latest H.264 / AVC (Advanced Video Coding).

H.264/AVC는 압축효율을 높이기 위하여 이전의 동영상 압축 표준에 비해 여러 특징적인 기능을 추가하였다. 상기 특징적인 기능 중의 하나가 화소영역에서의 화면내 예측부호화 방식이다. H.264 / AVC adds several features compared to previous video compression standards to improve compression efficiency. One of the characteristic functions is the intra prediction encoding method in the pixel region.

H.264/AVC에서는 화소영역에서 화면내 예측부호화를 수행하며 예측블록의 단위도 가변적이고 예측방향도 다양하다. In H.264 / AVC, intra prediction encoding is performed in the pixel region, and the units of the prediction blocks are variable and the prediction directions are various.

하나의 픽쳐(Picture)는 여러 슬라이스(Slice)로 구성될 수 있으며, 슬라이스는 다양한 타입을 갖는 매크로블록(Macroblock)으로 구성될 수 있다. One picture may be composed of several slices, and the slice may be composed of macroblocks having various types.

상기 매크로블록에 대한 모드는 크게 화면내 부호화인 인트라모드(Intra mode)와 화면간 부호화인 인터모드(Inter mode)로 구분된다. 다시 인트라모드는 화면내 예측을 필요로 하는 모드와 자체만으로 복호가 가능한 모드로 나뉜다.The mode for the macroblock is largely classified into an intra mode which is an intra picture encoding and an inter mode which is an inter picture encoding. Intra mode is divided into a mode that requires intra prediction and a mode that can be decoded by itself.

화면내 예측은 현재 블록의 참조화소가 화면 내의 주변 블록에 존재하므로, 이를 이용하여 현재 블록의 화소를 추정하는 것을 의미한다.Intra-prediction means that the reference pixel of the current block exists in the neighboring block in the screen, and thus, the pixel of the current block is estimated using the reference pixel.

도 1은 화면내 예측시 사용되는 휘도/색차 성분에 대한 매크로블록의 종류를 도시한 도면이다. 매크로블록 내의 휘도(Luma) 성분에 대한 추정방식은 4x4, 8x8 블록단위에 대해서는 각각 9가지의 선택방법이 있고, 16x16 블록단위에 대해서는 4 가지의 선택방법이 있다. 색차(Chroma) 성분에 대해서는 8x8 블록단위에 대해서 4가지의 화면내 예측방법이 있다.1 is a diagram illustrating types of macroblocks for luminance / color difference components used in intra prediction. There are nine selection methods for 4x4 and 8x8 block units, and four selection methods for 16x16 block units. For the chroma component, there are four intra-picture prediction methods for 8x8 block units.

각 매크로블록에 대한 화면내 예측방법은 부호화기의 특성에 따라 결정되는 것으로 복호기에서는 해당 예측방법에 대해 적합한 참조화소를 선택해야 한다. The intra prediction method for each macroblock is determined by the characteristics of the encoder. The decoder must select a suitable reference pixel for the prediction method.

도 2는 H.264/AVC 복호기의 구성을 도시한 블록도이다. 상기 H.264/AVC 복호기는 엔트로피 복호부(200), 역양자화/역변환부(210), 블록 메모리(220), 화면내 예측부(230), 디블록킹 필터부(240), 프레임 메모리(250) 및 움직임 보상부(260)를 포함한다.2 is a block diagram showing the configuration of an H.264 / AVC decoder. The H.264 / AVC decoder includes an entropy decoder 200, an inverse quantization / inverse transform unit 210, a block memory 220, an intra prediction unit 230, a deblocking filter unit 240, and a frame memory 250. ) And a motion compensator 260.

H.264/AVC의 부호화(Coding)는 이산 코사인 변환(Discrete Cosine Transform : DCT)과 양자화(Qunatization) 과정을 거친다. 그리고 양자화된 데이터를 엔트로피(Entropy) 부호화한다.Coding of H.264 / AVC is performed through Discrete Cosine Transform (DCT) and Quantization. The quantized data is entropy encoded.

복호화는 부호화의 역과정을 거치게 된다. 입력되는 신호를 상기 엔트로피 복호부(200)에서 엔트로피 복호하고, 역양자화/역변환부(210)에서 엔트로피 복호된 신호를 역 양자화와 역 DCT변환을 한다.Decoding is the reverse process of encoding. The input signal is entropy decoded by the entropy decoding unit 200, and inverse quantized and inverse DCT transformed by the entropy decoded signal by the inverse quantization / inverse transformer 210.

블록 메모리(220)에는 블록 단위의 디코딩을 위해 상기 역양자화/역변환부(210)에서 출력된 데이터를 저장한다. 화면내 예측부(230)는 화면 내의 주변블록을 참조하여 현재 블록의 화소를 예측한다.The block memory 220 stores data output from the inverse quantization / inverse transform unit 210 for decoding in units of blocks. The intra prediction unit 230 predicts pixels of the current block by referring to neighboring blocks in the screen.

디블록킹 필터부(240)는 블록단위의 부호화에서 발생하는 블록의 경계오차를 부드럽게 해주는 역할을 한다. 디블록킹 필터링을 하기 위해서는 매크로블록 경계에서의 화소 정보가 필요하다. 따라서 프레임 단위의 메모리가 필요하며 상기 프레 임 메모리(250)가 상기 화소 정보들을 저장하고 있다. The deblocking filter unit 240 serves to soften the boundary error of a block generated in block-based encoding. Deblocking filtering requires pixel information at the macroblock boundary. Therefore, a frame-based memory is required, and the frame memory 250 stores the pixel information.

디블록킹 필터부(240)는 상기 프레임 메모리(250)로부터 데이터를 가져와 디블록킹 필터링을 한 후에 다시 상기 프레임 메모리(250)에 데이터들을 업데이트 한다. 움직임 보상부(260)는 움직임 벡터를 이용하여 화면의 움직임을 보상한다.The deblocking filter unit 240 takes data from the frame memory 250 and performs deblocking filtering to update the data in the frame memory 250 again. The motion compensator 260 compensates for the motion of the screen by using the motion vector.

화면내 예측을 위해 사용되는 참조화소는 복원된 화소들이며 현재 처리되는 블록을 기준으로 아직 복원되지 않은 블록의 화소는 사용될 수 없다. 그리고 화면내 예측을 위해서는 디블록킹 필터링을 하기 전의 복원 화소들을 별도의 메모리에 저장하고 있어야 한다.Reference pixels used for intra prediction may be reconstructed pixels, and pixels of blocks not yet reconstructed based on the block currently being processed may not be used. In addition, for intra prediction, the reconstructed pixels before the deblocking filtering should be stored in a separate memory.

디블로킹 필터링을 프레임단위로 하는 구조에서는 프레임 전체에 대한 복호가 끝난 후에 디블록킹 필터링이 적용되므로 화면내 예측부와 디블록킹 필터부가 메모리를 공유하는 것을 생각할 수 있다. In the structure using deblocking filtering as a frame unit, since the deblocking filtering is applied after the decoding of the entire frame is finished, it is conceivable that the intra prediction unit and the deblocking filter share the memory.

그러나 디블로킹 필터링을 하게 되면 본래 화소의 값이 변하게 되어 화면내 예측에 사용할 수 없다. 그리고 복호기에서 디블록킹 필터링은 항상 수행되는 것이 아니라 부호화시 디블록킹 필터링을 한 경우에만 수행되므로, 모든 경우에 대해 복원된 프레임 전체를 저장할 필요는 없고, 화면내 예측에 필요한 화소와 디블록킹 필터링에 필요한 화소의 위치가 다르므로 반드시 복원된 화소들을 공유할 필요는 없다.However, deblocking filtering changes the original pixel values and cannot be used for intra prediction. Since the deblocking filtering is not always performed in the decoder but only when the deblocking filtering is performed during encoding, it is not necessary to store the entire reconstructed frame for all cases, and is necessary for the pixels and the deblocking filtering necessary for intra prediction. Since the positions of the pixels are different, it is not necessary to share the restored pixels.

따라서, 상기와 같은 경우 화면내 예측을 위해 복원된 프레임 전체를 별도의 메모리에 저장해야 하므로 메모리 소모가 많고 복호 처리에도 프레임 지연을 가져온다는 문제점이 있었다.Therefore, in the above case, since the entire reconstructed frame for intra prediction is stored in a separate memory, memory consumption is high and there is a problem that a frame delay is caused even in the decoding process.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 메모리를 효율적으로 관리할 수 있는 비디오 복호기 및 복호방법을 제공하는 것이다.The present invention has been made to solve the above problems, and an object of the present invention is to provide a video decoder and a decoding method capable of efficiently managing a memory.

상기와 같은 문제점을 해결하기 위한 본 발명에 따른 비디오 복호기의 특징은, 블록단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 저장하는 저장부, 현재 매크로블록에 대하여 상기 저장부에 저장된 참조화소를 참조하여 화면내 예측을 수행하는 화면내 예측부, 및 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소들을 추출하여 상기 저장부에 저장하고, 상기 저장부에 저장된 화소 가운데 현재 매크로블록의 화면내 예측에 필요한 참조화소를 독출하여 상기 화면내 예측부로 전송하는 참조화소 처리부를 포함하는 데에 있다.A feature of the video decoder according to the present invention for solving the above problems is a storage unit for storing the pixels that are likely to be referenced in the intra prediction from among the pixels reconstructed in units of blocks, the storage unit for the current macroblock An intra prediction unit that performs the intra prediction by referring to the stored reference pixel, and the pixels which are likely to be referred to in the intra prediction among the reconstructed pixels are extracted and stored in the storage unit. And a reference pixel processor for reading a reference pixel required for intra-picture prediction of the macroblock and transmitting the reference pixel to the intra-picture predictor.

본 발명에 따른 비디오 복호방법의 특징은, 블록 단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 추출하여 저장하는 단계, 상기 저장되어 있는 화소 가운데 현재 화면내 예측을 수행하는 블록에서 필요한 참조화소를 독출하는 단계, 및 상기 독출한 참조화소를 이용하여 현재 블록의 화면내 예측을 수행하는 단계를 포함하는 데에 있다.A video decoding method according to the present invention is characterized in that the step of extracting and storing a pixel likely to be referenced in the intra prediction from among the pixels reconstructed in units of blocks, in the block performing the current intra prediction among the stored pixels And reading out the necessary reference pixels, and performing intra prediction of the current block using the read reference pixels.

본 발명의 다른 목적, 특성 및 이점들은 첨부한 도면을 참조한 실시 예들의 상세한 설명을 통해 명백해질 것이다.Other objects, features and advantages of the present invention will become apparent from the detailed description of the embodiments with reference to the accompanying drawings.

아울러, 본 발명에서 사용되는 용어는 가능한 한 현재 널리 사용되는 일반적 인 용어를 선택하였으나, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재하였으므로, 단순한 용어의 명칭이 아닌 용어가 가지는 의미로서 본 발명을 파악하여야 함을 밝혀 두고자 한다.In addition, the term used in the present invention was selected as a general term widely used as possible now, but in some cases, the term is arbitrarily selected by the applicant, in which case the meaning is described in detail in the description of the invention, the simple term It is to be clear that the present invention is to be understood as a meaning of terms rather than names.

이와 같이 구성된 본 발명에 따른 비디오 복호기 및 복호방법의 동작을 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.The operation of the video decoder and the decoding method according to the present invention configured as described above will be described in detail with reference to the accompanying drawings.

도 3은 본 발명에 따른 일 실시예로서 H.264/AVC 복호기의 구성을 도시한 블록도이다.3 is a block diagram illustrating a configuration of an H.264 / AVC decoder as an embodiment according to the present invention.

상기 복호기는 엔트로피 복호부(300), 역양자화/역변환부(310), 블록 메모리(320), 참조화소 처리부(330), 제1메모리(340), 제2메모리(350), 화면내 예측부(360), 디블록킹 필터부(370), 프레임 메모리(380) 및 움직임 보상부(390)를 포함한다.The decoder includes an entropy decoder 300, an inverse quantization / inverse transformer 310, a block memory 320, a reference pixel processor 330, a first memory 340, a second memory 350, and an intra prediction prediction unit. 360, a deblocking filter 370, a frame memory 380, and a motion compensator 390.

입력되는 신호를 상기 엔트로피 복호부(300)에서 엔트로피 복호하고, 역양자화/역변환부(310)에서 엔트로피 복호된 신호를 역 양자화와 역 DCT변환을 한다. The input signal is entropy decoded by the entropy decoding unit 300 and inverse quantized and inverse DCT transformed by the entropy decoded signal by the inverse quantization / inverse transformer 310.

블록 메모리(320)에는 블록 단위의 디코딩을 위해 상기 역양자화/역변환부(310)에서 출력된 데이터와 화면내 예측부(360) 혹은 움직임 보상부(390)에서 나온 데이터를 합하여 복원된 데이터를 저장한다.The block memory 320 stores data reconstructed by adding the data output from the inverse quantization / inverse transform unit 310 and the data from the intra prediction unit 360 or the motion compensator 390 for block-by-block decoding. do.

참조화소 처리부(330)는 복원된 화소 가운데 이후에 매크로블록의 화면내 예측을 위해 참조될 가능성이 있는 참조화소를 판단한다. 단, MBAFF가 사용된 경우에는 매크로블록쌍 단위로 판단한다. 상기 판단에 따라 참조될 가능성이 있는 화소들 을 제1메모리(340) 또는 제2메모리(350)에 저장한다.The reference pixel processor 330 determines among the reconstructed pixels, which may be referred to for intra prediction of the macroblock. However, when MBAFF is used, it is determined in units of macroblock pairs. The pixels, which may be referred to according to the determination, are stored in the first memory 340 or the second memory 350.

상기 제1메모리(340)는 화면내 예측을 위해 사용하는 내부 메모리이고, 상기 제2메모리(350)는 다른 구성요소와 데이터를 공유할 수 있는 외부 메모리이다.The first memory 340 is an internal memory used for intra prediction, and the second memory 350 is an external memory that can share data with other components.

해상도가 작은 영상을 복호하는 경우와 같이 상기 내부 메모리가 크지 않아도 되는 경우에는 상기 제1메모리(340) 하나만 사용할 수도 있다.When the internal memory does not need to be large, such as when decoding an image having a small resolution, only one first memory 340 may be used.

또한, 참조화소 처리부(330)는 화면내 예측을 수행하는 매크로블록에 대하여 필요한 참조화소를 상기 메모리들로부터 독출하여 화면내 예측부(360)로 전송한다.In addition, the reference pixel processor 330 reads reference pixels necessary for the macroblock for performing the intra prediction from the memories and transmits the reference pixels to the intra prediction unit 360.

화면내 예측부(360)는 화면 내의 주변블록을 참조하여 현재 블록의 화소를 예측한다. The intra prediction unit 360 predicts pixels of the current block by referring to neighboring blocks in the screen.

디블록킹 필터부(370)는 블록단위의 부호화에서 발생하는 블록의 경계오차를 부드럽게 해주는 역할을 한다. 디블록킹 필터링을 하기 위해서는 매크로블록 경계에서의 화소 정보가 필요하다. 따라서 프레임 단위의 메모리가 필요하며 상기 프레임 메모리(380)가 상기 화소 정보들을 저장하고 있다. The deblocking filter 370 serves to soften the boundary error of the block generated in the block-based encoding. Deblocking filtering requires pixel information at the macroblock boundary. Therefore, a frame memory is required, and the frame memory 380 stores the pixel information.

디블록킹 필터부(370)는 상기 프레임 메모리(380)로부터 데이터를 가져와 디블록킹 필터링을 한 후에 다시 상기 프레임 메모리(380)에 데이터들을 업데이트 한다. 움직임 보상부(390)는 움직임 벡터를 이용하여 화면의 움직임을 보상한다.The deblocking filter 370 updates the data in the frame memory 380 after deblocking filtering by taking data from the frame memory 380. The motion compensator 390 compensates for the motion of the screen by using the motion vector.

이하 참조화소 처리부(330)의 동작에 대해 살펴본다.Hereinafter, an operation of the reference pixel processor 330 will be described.

참조화소 처리부(330)는 매크로블록 단위의 화면내 예측을 위해 매 매크로블록 단위나 매 매크로블록쌍 단위에 대해서 참조될 가능성이 있는 화소를 제1메모리(340) 또는 제2메모리(350)에 저장하고 읽어 들인다.The reference pixel processor 330 stores, in the first memory 340 or the second memory 350, pixels that may be referred to for every macroblock unit or every macroblock pair unit for intra-picture prediction in macroblock units. Read it.

매크로블록 적응형 프레임/필드(Macroblock Adaptive Frame-Field : 이하 MBAFF)를 사용하지 않는 경우에, 상기 참조화소 처리부(330)는 복원된 매크로블록의 화소 가운데에서 다른 매크로블록에서 사용될 참조화소를 상기 제1메모리(340) 또는 제2메모리(350)에 저장한다. When the macroblock adaptive frame / field (MBAFF) is not used, the reference pixel processor 330 selects a reference pixel to be used in another macroblock among pixels of the restored macroblock. It is stored in the first memory 340 or the second memory 350.

이때, 화면내 예측에 있어서 복원된 매크로블록의 화소 전체가 참조되는 것은 아니므로 화소 전체가 아니라 다른 매크로블록에서 사용될 참조화소를 저장하여 놓는다.In this case, since not all pixels of the reconstructed macroblocks are referred to in intra prediction, reference pixels to be used in other macroblocks are stored instead of the entire pixels.

도 4는 MBAFF가 사용되지 않은 경우에 화면내 예측시 참조되는 참조 매크로블록과 참조 화소를 도시한 도면이다. 현재의 매크로블록(MB_1)을 기준으로 좌측(MB_A), 좌상측(MB_D), 상측(MB_B), 우상측(MB_C)의 매크로블록에서 현재의 매크로블록과 경계를 이루는 화소들이 현재 매크로블록의 화면내 예측을 위한 참조화소로 사용될 수 있다.FIG. 4 is a diagram illustrating a reference macroblock and a reference pixel that are referenced during intra prediction when MBAFF is not used. In the macroblocks on the left (MB_A), top left (MB_D), top (MB_B), and top right (MB_C) based on the current macroblock MB_1, pixels bordering the current macroblock are displayed on the screen of the current macroblock. Can be used as a reference pixel for my prediction.

도 5는 MBAFF가 사용되지 않은 경우에 화면내 예측시 참조하기 위해 저장할 참조 화소를 도시한 도면이다. 이하에서는 휘도성분의 경우 16x16 단위의 매크로블록을, 색차성분의 경우 8x8 단위의 매크로블록을 예로 들어 설명한다.5 is a diagram illustrating reference pixels to be stored for reference in intra prediction when MBAFF is not used. Hereinafter, a macroblock of 16 × 16 units for the luminance component and a macroblock of 8 × 8 units for the color difference component will be described as an example.

복원된 매크로블록을 기준으로 우측의 매크로블록에서 화면내 예측을 수행하는 경우, 상기 복원된 매크로블록과 그 우측의 매크로블록이 경계를 이루는 화소들(참조화소 A)이 상기 우측의 매크로블록의 좌측 참조화소(MB_A)가 될 수 있다.When intra prediction is performed on a macroblock on the right side based on the reconstructed macroblock, pixels (reference pixel A) bounded by the reconstructed macroblock and the macroblock on the right side are left of the macroblock on the right side. It may be a reference pixel MB_A.

그리고 복원된 매크로블록을 기준으로 하측의 매크로블록에서 화면내 예측을 수행하는 경우, 상기 복원된 매크로블록과 그 하측의 매크로블록이 경계를 이루는 화소들(참조화소 B)이 상기 하측의 매크로블록의 상측 참조화소(MB_B)가 될 수 있다.When intra prediction is performed on the lower macroblock on the basis of the reconstructed macroblock, pixels (reference pixel B) bounded by the reconstructed macroblock and the lower macroblock are included in the lower macroblock. It may be an upper reference pixel MB_B.

복원된 매크로블록을 기준으로 우하측의 매크로블록에서 화면내 예측을 수행하는 경우, 상기 복원된 매크로블록과 그 우하측의 매크로블록이 경계를 이루는 화소(참조화소 D)가 상기 우하측의 매크로블록의 좌상측 참조화소(MB_D)가 될 수 있다.When intra prediction is performed on a macroblock on the lower right side based on the reconstructed macroblock, the pixel (reference pixel D) bounded by the reconstructed macroblock and the macroblock on the lower right side is the macroblock on the lower right side. It may be the upper left reference pixel of MB_D.

따라서, 본 발명에서는 현재 복원된 매크로블록의 관점에서 볼 때, 상기 복원된 매크로블록의 화소 전체를 저장하는 것이 아니라 다른 매크로블록에서 참조될 가능성이 있는 상기 참조화소 A, 참조화소 B, 참조화소 D 부분만 메모리에 저장한다. 상기 참조화소 B부분은 또한 좌하측의 매크로블록 화면내 예측시 참조화소 C가 될 수 있다.Accordingly, in the present invention, from the viewpoint of the currently restored macroblock, the reference pixel A, the reference pixel B, and the reference pixel D, which may be referred to from another macroblock instead of storing the entire pixel of the restored macroblock, are referred to. Only parts are stored in memory. The reference pixel portion B may also be a reference pixel C in prediction of the left and right macroblock pictures.

도 6은 MBAFF가 사용되지 않은 경우에 화면내 예측시 주변 매크로블록과의 참조관계를 도시한 도면이다. 상기 도 6의 픽쳐는 하나의 행이 N개의 매크로블록으로 구성되어 있다. FIG. 6 is a diagram illustrating a reference relationship with neighboring macroblocks in intra prediction when MBAFF is not used. In the picture of FIG. 6, one row includes N macroblocks.

예를 들어 (2N-3)번째 매크로블록이 휘도성분 또는 색차성분에 대해 화면내 예측을 하는 경우에, 현재 매크로블록을 기준으로 참조화소 A는 좌측, 참조화소 B는 상측, 참조화소 C는 우상측, 참조화소 D는 좌상측 매크로블록으로부터 참조한다.For example, when the (2N-3) th macroblock makes an intra prediction about a luminance component or a chrominance component, the reference pixel A is on the left, the reference pixel B is on the top, and the reference pixel C is on the right based on the current macroblock. The side and reference pixel D refer to from the upper left macroblock.

즉, (2N-3)번째 매크로블록의 참조화소 A는 (2N-4)번째, 참조화소 B, C는 각각 (N-3)번째와, (N-2)번째 매크로블록에서 저장된 참조화소를 사용한다. 참조화소 D는 (N-4)번째의 매크로블록에서 저장된 참조화소를 사용한다.That is, reference pixels A of the (2N-3) -th macroblocks refer to reference pixels stored in the (2N-4) -th, reference pixels B and C, respectively, in the (N-3) -th and (N-2) -th macroblocks. use. The reference pixel D uses the reference pixel stored in the (N-4) th macroblock.

화면내 예측은 좌측에서 우측으로, 위에서 아래로 진행되므로 (2N-3)번째 매크로블록의 화면내 예측을 하는 경우 상기 (2N-4), (N-3), (N-2), (N-4)번째 매크로블록의 화소는 이미 복원되어 있다.Intra-picture prediction proceeds from left to right and from top to bottom, so when (2N-4), (N-3), (N-2), (N The pixel of the -4) th macroblock is already restored.

상기 참조화소 A 부분을 저장하는 경우에 큰 메모리 공간은 필요하지 않고 복원하는 매크로블록의 좌측에 있는 매크로블록의 가장 우측 화소들의 휘도성분과 색차성분 저장공간만 있으면 된다. 예를 들어, 0번째 매크로블록이 복원된 후에 0번째 매크로블록의 가장 우측 화소들을 저장시켜 놓아, 다음 1번째 매크로블록의 화면내 예측시에 사용하도록하고 이러한 동작을 매 매크로블록마다 반복한다.In the case of storing the reference pixel A portion, a large memory space is not required, and only a luminance component and a chrominance component storage space of the rightmost pixels of the macroblock on the left side of the macroblock to be restored are needed. For example, after the 0th macroblock is reconstructed, the rightmost pixels of the 0th macroblock are stored and used for intra prediction of the next 1st macroblock, and this operation is repeated every macroblock.

상기 참조화소 B, C, D 부분은 같은 행의 매크로블록에 의해 참조되는 것이 아니라 바로 윗 행의 매크로블록에 의해 참조되는 것이다. 따라서, 상기 바로 윗 행에 대한 참조화소들은 모두 메모리에 저장되어 있어야 한다.The reference pixels B, C, and D are not referenced by macroblocks in the same row but by macroblocks in the immediately above row. Therefore, all the reference pixels for the above row must be stored in the memory.

즉, (N-3), (N-2), (N-4)번째 매크로블록에서 참조되는 화소는 적어도 상기 (2N-3)번째 매크로블록의 화면내 예측을 할 때까지는 메모리에 저장되어 있어야 한다. That is, the pixels referred to in the (N-3), (N-2), and (N-4) th macroblocks must be stored in the memory until at least intra prediction of the (2N-3) th macroblocks is performed. do.

도 7은 MBAFF가 사용된 경우에 화면내 예측시 참조되는 매크로블록쌍을 도시한 도면이다. MBAFF가 사용되는 경우에는 매크로블록쌍 단위로 처리되기 때문에 MBAFF가 사용되지 않는 경우와는 다른 처리가 필요하다.FIG. 7 illustrates a macroblock pair referred to in intra prediction when MBAFF is used. When MBAFF is used, it is processed in units of macroblock pairs, and thus different processing is required than when MBAFF is not used.

MBAFF가 사용되는 경우는 매크로블록쌍으로 처리가 되는데 상기 매크로블록쌍은 상위(Top) 매크로블록과 하위(Bottom) 매크로블록으로 구성된다. 상기 매크로 블록쌍의 각 매크로블록에 대한 형식은 프레임 또는 필드 형식이 있다.When MBAFF is used, it is processed as a macroblock pair, which is composed of a top macroblock and a bottom macroblock. The format for each macroblock of the macroblock pair is a frame or field format.

매크로블록쌍이 프레임 형식인지 또는 필드 형식인지는 복호기에 입력된 비트스트림을 엔트로피 복호부에서 복호한 후 알 수 있다.Whether the macroblock pair is in the frame or field format can be known after the bitstream input to the decoder is decoded in the entropy decoding unit.

상기 도 7을 살펴보면, 현재의 매크로블록쌍(Macroblock Pair : 이하 MBP)에서 참조화소B로 사용될 수 있는 매크로블록쌍B(MBP_B)의 화소는 참조화소T_T(Top_Top), 참조화소T_B(Top_Bottom), 참조화소B_T(Bottom_Top), 참조화소B_B(Bottom_Bottom)가 있다. 상기 참조화소의 약어에서 앞의 알파벳은 매크로블록쌍에서 매크로블록의 위치를 가리키며, 뒤의 알파벳은 매크로블록 내에서 참조화소들의 위치를 가리킨다.Referring to FIG. 7, the pixels of the macroblock pair B (MBP_B) that can be used as the reference pixel B in the current macroblock pair (MBP) are referred to as reference pixels T_T (Top_Top), reference pixels T_B (Top_Bottom), There is a reference pixel B_T (Bottom_Top) and a reference pixel B_B (Bottom_Bottom). In the abbreviation of the reference pixel, the first letter indicates the position of the macroblock in the macroblock pair, and the second letter indicates the position of the reference pixels within the macroblock.

상기 참조화소들 가운데 Bottom화소는 매크로블록쌍의 각 매크로블록에서 최하단에 있는 화소들을 말하며, Top화소는 매크로블록쌍의 각 매크로블록에서 상기 Bottom화소의 바로 윗 행에 있는 화소들을 말한다.The bottom pixel of the reference pixels refers to the pixels at the bottom of each macroblock of the macroblock pair, and the Top pixel refers to the pixels in the row immediately above the bottom pixel in each macroblock of the macroblock pair.

상기 참조화소들 가운데 현재 매크로블록쌍의 화면내 예측을 위해 필요한 화소는 참조화소T_B, 참조화소B_T, 참조화소B_B이다. 따라서 상기 매크로블록쌍B(MBP_B)에서 하위 매크로블록쌍의 화면내 예측을 위해 저장해야 할 참조화소는 참소화소T_B, 참조화소B_T, 참조화소B_B이다.Pixels required for intra prediction of the current macroblock pair among the reference pixels are a reference pixel T_B, a reference pixel B_T, and a reference pixel B_B. Accordingly, reference pixels to be stored for intra prediction of the lower macroblock pair in the macroblock pair B (MBP_B) are true pixel T_B, reference pixel B_T, and reference pixel B_B.

그러나 상기 참조화소들을 모두 저장하지 않고 매크로블록쌍의 형식에 따라 분류하여 참조화소를 저장한다.However, without storing all of the reference pixels, the reference pixels are stored according to the macroblock pair format.

도 8(a) 내지 8(d)는 MBAFF가 사용된 경우에 화면내 예측시 참조되는 참조 화소 B와 C를 도시한 도면이다.8 (a) to 8 (d) are diagrams showing reference pixels B and C which are referred to during intra prediction when MBAFF is used.

상기 도 8(a) 내지 8(d)에서 상부에 있는 매크로블록쌍은 매크로블록쌍B(MBP_B)를 나타내며, 하부에 있는 매크로블록쌍은 현재 화면내 예측을 수행하는 매크로블록쌍을 나타낸다.8 (a) to 8 (d), the upper macroblock pair represents a macroblock pair B (MBP_B), and the lower macroblock pair represents a macroblock pair for performing current intra prediction.

매크로블록쌍은 프레임 형식과 필드 형식의 2가지가 있으므로, 상부 매크로블록쌍 2종류와 하부 매크로블록쌍 2종류를 이용하여 4개의 조합을 생각할 수 있다.Since there are two types of macroblock pairs, a frame type and a field type, four combinations can be considered using two types of upper macroblock pairs and two types of lower macroblock pairs.

상기 도 8(a)는 매크로블록쌍B가 프레임 형식이고, 현재 화면내 예측을 수행하는 매크로블록쌍도 프레임 형식인 경우이다. 8A illustrates a case in which the macroblock pair B is in a frame format and the macroblock pair for performing current intra prediction is also in a frame format.

현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 경우에는 매크로블록쌍B의 참조화소B_B를 참조하며, 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록의 경우에는 현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 참조화소T_B를 참조한다.The upper macroblock of the macroblock pair that performs the current intra prediction is referred to the reference pixel B_B of the macroblock pair B. The lower macroblock of the macroblock pair that performs the current intra prediction is the current intra prediction. Reference pixel T_B of the upper macroblock of the macroblock pair to perform the operation.

상기 도 8(b)는 매크로블록쌍B가 프레임 형식이고, 현재 화면내 예측을 수행하는 매크로블록쌍은 필드 형식인 경우이다. 8B illustrates a case in which the macroblock pair B is in a frame format and the macroblock pair for performing current intra prediction is in a field format.

현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 경우에는 매크로블록쌍B의 참조화소B_T를 참조하며, 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록의 경우에는 매크로블록쌍B의 참조화소B_B를 참조한다.The upper macroblock of the macroblock pair that performs the current intra prediction is referred to the reference pixel B_T of the macroblock pair B, and the macroblock pair B of the lower macroblock of the macroblock pair that performs the current intra prediction. See reference pixel B_B.

상기 8(a)와 8(b)의 경우는 매크로블록쌍B가 프레임 형식인 경우이다. 상기 (a)의 경우 매크로블록쌍B에서 참조화소B_B만 필요하지만 상기 매크로블록쌍B의 복원이 끝난 당시에는 그 하부에 어떤 형식의 매크로블록쌍이 오는지 알 수 없다. In the case of 8 (a) and 8 (b), the macroblock pair B is in a frame format. In the case of (a), only the reference pixel B_B is required in the macroblock pair B, but when the restoration of the macroblock pair B is completed, it is not possible to know what type of macroblock pair comes below.

따라서, 상기 매크로블록쌍B의 복원이 끝나면 참조화소B_T와 참조화소 B_B 모두를 메모리에 저장하여 놓는다.Accordingly, when the macroblock pair B is restored, both the reference pixel B_T and the reference pixel B_B are stored in the memory.

상기 도 8(c)는 매크로블록쌍B가 필드 형식이고, 현재 화면내 예측을 수행하는 매크로블록쌍은 프레임 형식인 경우이다. 8C illustrates a case in which the macroblock pair B is in a field format, and the macroblock pair for performing current intra prediction is in a frame format.

현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 경우에는 매크로블록쌍B의 참조화소B_B를 참조하며, 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록의 경우에는 현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 참조화소T_B를 참조한다.The upper macroblock of the macroblock pair that performs the current intra prediction is referred to the reference pixel B_B of the macroblock pair B. The lower macroblock of the macroblock pair that performs the current intra prediction is the current intra prediction. Reference pixel T_B of the upper macroblock of the macroblock pair to perform the operation.

상기 도 8(d)는 매크로블록쌍B가 필드 형식이고, 현재 화면내 예측을 수행하는 매크로블록쌍도 필드 형식인 경우이다. 8 (d) shows that the macroblock pair B has a field format, and the macroblock pair for performing current intra prediction is also a field format.

현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 경우에는 매크로블록쌍B의 참조화소T_B를 참조하며, 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록의 경우에는 매크로블록쌍B의 참조화소B_B를 참조한다.The upper macroblock of the macroblock pair that performs the current intra prediction is referred to the reference pixel T_B of the macroblock pair B, and the macroblock pair B of the lower macroblock of the macroblock pair that performs the current intra prediction See reference pixel B_B.

상기 8(c)와 8(d)의 경우는 매크로블록쌍B가 필드 형식인 경우이다. 상기 (c)의 경우 매크로블록쌍B에서 참조화소B_B만 필요하지만 상기 매크로블록쌍B의 복원이 끝난 당시에는 그 하부에 어떤 형식의 매크로블록쌍이 오는지 알 수 없다. In the case of 8 (c) and 8 (d), the macroblock pair B is in a field format. In the case of (c), only the reference pixel B_B is required in the macroblock pair B, but when the restoration of the macroblock pair B is completed, it is not possible to know what type of macroblock pair comes below.

따라서, 상기 매크로블록쌍B의 복원이 끝나면 참조화소T_B와 참조화소 B_B 모두를 메모리에 저장하여 놓는다.Therefore, when the macroblock pair B is restored, both the reference pixel T_B and the reference pixel B_B are stored in the memory.

매크로블록쌍C(MBP_C)의 경우에는 상기 매크로블록쌍B(MBP_B)의 참조되는 화소와 겹친다. 즉, 현재 매크로블록쌍의 다음 매크로블록쌍에서 참조화소 B로 사용 하기 위해 저장하여 둔 화소를 사용하면 된다.In the case of the macroblock pair C (MBP_C), it overlaps with the pixel referred to in the macroblock pair B (MBP_B). That is, the pixel stored in the next macroblock pair of the current macroblock pair may be used as the reference pixel B.

따라서, 상기 매크로블록쌍C(MBP_C)의 경우에는 현재 화면내 예측을 수행하는 매크로블록쌍의 복원이 끝나면, 상기 현재 매크로블록쌍의 매크로블록쌍C로 사용한 참조화소들은 그 다음 매크로블록쌍의 화면내 예측시 매크로블록쌍B의 참조화소로 사용된다.Therefore, in the case of the macroblock pair C (MBP_C), after the restoration of the macroblock pair for performing the current intra prediction, the reference pixels used as the macroblock pair C of the current macroblock pair are the screens of the next macroblock pair. It is used as a reference pixel of macroblock pair B in my prediction.

상기 각 예에서 현재 화면내 예측을 수행하는 매크로블록쌍의 이후 매크로블록쌍을 위해 저장하는 참조화소들은 현재 화면내 예측을 수행하는 매크로블록쌍에서 하위 매크로블록에 대한 복원이 끝난 뒤에 메모리에 저장된다.In each of the above examples, the reference pixels stored for subsequent macroblock pairs of the macroblock pair performing the current intra prediction are stored in memory after reconstruction of the lower macroblock in the macroblock pair performing the current intra prediction. .

상기와 같이 저장을 관리함으로써 행 단위의 화소들을 저장해야 하는 매크로블록쌍B, C의 참조화소에 대한 메모리의 크기를 줄일 수 있다. 즉, 기존의 참조화소T_B, 참조화소B_T, 참조화소B_B를 모두 저장하였던 것과는 달리 매크로블록쌍의 형식에 따라 2개의 참조화소만 저장하므로 메모리의 크기를 2/3로 줄일 수 있고, 메모리 접근시간도 줄일 수 있다.By managing the storage as described above, it is possible to reduce the size of the memory for the reference pixels of the macroblock pairs B and C in which the pixels in the row unit should be stored. That is, unlike the conventional reference pixel T_B, reference pixel B_T, and reference pixel B_B, only two reference pixels are stored according to the format of the macroblock pair, so the memory size can be reduced to 2/3, and the memory access time is reduced. Can also be reduced.

도 9(a) 내지 9(d)는 MBAFF가 사용된 경우에 화면내 예측시 참조되는 참조화소 D를 도시한 도면이다. 이 경우에도 좌상부 매크로블록쌍 2종류와 현재 매크로블록쌍 2종류를 이용하여 4개의 조합을 생각할 수 있다.9 (a) to 9 (d) are diagrams showing reference pixels D to be referred to during intra prediction when MBAFF is used. In this case, four combinations can be considered using two types of upper left macroblock pairs and two types of current macroblock pairs.

상기 도 9(a)는 좌상부의 매크로블록쌍D가 프레임 형식이고, 현재 화면내 예측을 수행하는 매크로블록쌍도 프레임 형식인 경우이다.9A illustrates a case in which the macroblock pair D in the upper left is in a frame format, and the macroblock pair for performing the current intra prediction is also in the frame format.

현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 경우에는 매크로블록쌍D에서 현재 매크로블록쌍의 상부 매크로블록과 접하는 부분의 한 화소 를 참조한다.In the case of the upper macroblock of the macroblock pair that performs the current intra prediction, the macroblock pair D refers to one pixel of the part which contacts the upper macroblock of the current macroblock pair.

다만, 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록의 경우에는 매크로블록쌍A의 형식을 살펴보아야 한다. 도 9(a)와 같이 매크로블록쌍A가 프레임 형식인 경우에는 매크로블록쌍A의 상부 매크로블록에서 현재 매크로블록쌍의 하부 매크로블록과 접하는 부분의 한 화소를 참조한다.However, in the case of the lower macroblock of the macroblock pair for performing the current intra prediction, the format of the macroblock pair A should be examined. As shown in FIG. 9A, when the macroblock pair A is in a frame format, a pixel of the upper macroblock of the macroblock pair A in contact with the lower macroblock of the current macroblock pair is referred to.

매크로블록쌍A가 필드 형식인 경우에는 도 9(d)와 같이 매크로블록쌍A에서 하부 매크로블록을 반으로 나누었을 때 상기 나뉜 매크로블록 가운데 상부의 마지막 행 우측 하나의 화소를 참조한다.When the macroblock pair A is in the field format, when the lower macroblock is divided in half in the macroblock pair A as shown in FIG. 9 (d), one pixel on the right of the last row in the upper row of the divided macroblocks is referenced.

상기 도 9(b)는 좌상부의 매크로블록쌍D가 프레임 형식이고, 현재 화면내 예측을 수행하는 매크로블록쌍은 필드 형식인 경우이다. 9B illustrates a case in which the macroblock pair D in the upper left is in a frame format, and the macroblock pair for performing the current intra prediction is in the field format.

현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 경우에는 매크로블록쌍D에서 현재 매크로블록쌍의 상부 매크로블록과 접하는 부분의 화소 바로 위에 있는 한 화소를 참조하며, 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록의 경우에는 매크로블록쌍D에서 현재 매크로블록쌍의 상부 매크로블록과 접하는 부분의 한 화소를 참조한다.In the case of the upper macroblock of the macroblock pair that performs the current intra prediction, the macroblock pair D refers to one pixel directly above the pixel of the part which contacts the upper macroblock of the current macroblock pair, and performs the current intra prediction. In the case of the lower macroblock of the macroblock pair, reference is made to one pixel of the portion of the macroblock pair D that contacts the upper macroblock of the current macroblock pair.

상기 도 9(c)는 좌상부의 매크로블록쌍D가 필드 형식이고, 현재 화면내 예측을 수행하는 매크로블록쌍도 필드 형식인 경우이다. 9 (c) shows a case in which the macroblock pair D in the upper left is in a field format, and the macroblock pair for performing current intra prediction is also in a field format.

현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 경우에는 매크로블록쌍D에서 상부 매크로블록의 마지막 행 우측 하나의 화소를 참조하며, 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록의 경우에는 매크로블 록쌍D에서 하부 매크로블록의 마지막 행 우측 하나의 화소를 참조한다.In the case of the upper macroblock of a macroblock pair that performs the current intra prediction, the macroblock pair D refers to one pixel to the right of the last row of the upper macroblock, and the lower macroblock of the macroblock pair that performs the current intra prediction. In the case of, the macroblock pair D refers to one pixel to the right of the last row of the lower macroblock.

상기 도 9(d)는 좌상부의 매크로블록쌍D가 필드 형식이고, 현재 화면내 예측을 수행하는 매크로블록쌍은 프레임 형식인 경우이다.FIG. 9D illustrates a case in which the macroblock pair D in the upper left portion has a field format, and the macroblock pair for performing current intra prediction is in a frame format.

현재 화면내 예측을 수행하는 매크로블록쌍의 상부 매크로블록의 경우에는 매크로블록쌍D에서 하부 매크로블록의 마지막 행 우측 하나의 화소를 참조한다.In the case of the upper macroblock of the macroblock pair for performing the current intra prediction, the pixel of the macroblock pair D refers to one pixel to the right of the last row of the lower macroblock.

다만, 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록의 경우에는 매크로블록쌍A의 형식을 살펴보아야 한다. 도 9(a)와 같이 매크로블록쌍A가 프레임 형식인 경우에는 매크로블록쌍A의 상부 매크로블록에서 현재 매크로블록쌍의 하부 매크로블록과 접하는 부분의 한 화소를 참조한다.However, in the case of the lower macroblock of the macroblock pair for performing the current intra prediction, the format of the macroblock pair A should be examined. As shown in FIG. 9A, when the macroblock pair A is in a frame format, a pixel of the upper macroblock of the macroblock pair A in contact with the lower macroblock of the current macroblock pair is referred to.

매크로블록쌍A가 필드 형식인 경우에는 도 9(d)와 같이 매크로블록쌍A에서 하부 매크로블록을 반으로 나누었을 때 상기 나뉜 매크로블록 가운데 상부의 마지막 행 우측 하나의 화소를 참조한다.When the macroblock pair A is in the field format, when the lower macroblock is divided in half in the macroblock pair A as shown in FIG. 9 (d), one pixel on the right of the last row of the upper row of the divided macroblocks is referred to.

도 9(e)는 상기 도 9(d)의 현재 화면내 예측을 수행하는 매크로블록쌍의 하부 매크로블록이 참조하는 참조화소D의 위치를 도시한 도면이다. 상기 도 9(e)에서 16x16의 휘도성분과 8x8의 색차성분 각각에 대하여 참조화소의 위치를 알 수 있다.FIG. 9 (e) shows the position of the reference pixel D referenced by the lower macroblock of the macroblock pair for performing the current intra prediction of FIG. 9 (d). In FIG. 9E, the position of the reference pixel can be known for each of the 16x16 luminance component and the 8x8 chroma component.

상기 매크로블록쌍D에서 참조하는 참조화소의 경우에는 현재 화면내 예측을 수행하고자하는 매크로블록쌍마다 2개의 화소만을 참조한다. In the case of the reference pixel referred to in the macroblock pair D, only two pixels are referred to each macroblock pair for which current intra prediction is to be performed.

상기와 같이 참조화소D는 좌상측의 매크로블록쌍D로부터 화면내 예측을 위한 참조화소를 읽을 수도 있지만, 현재 매크로블록의 형식에 따라 좌측의 매크로블록쌍A의 상부 매크로블록이나 하부 매크로블록에서 읽을 수도 있다.As described above, although the reference pixel D may read the reference pixel for intra prediction from the upper left macroblock pair D, the reference pixel D may read from the upper macroblock or lower macroblock of the left macroblock pair A depending on the format of the current macroblock. It may be.

상기 현재 매크로블록의 화면내 예측을 하는 경우에 필요한 참조화소D는 현재 매크로블록의 이전 매크로블록을 복원하는 과정에서 참조한 참조화소B의 일부분이거나, 상기 이전 매크로블록에서 복원된 화소에 해당한다.The reference pixel D required for intra prediction of the current macroblock is a part of the reference pixel B referred to in the process of reconstructing the previous macroblock of the current macroblock, or corresponds to a pixel reconstructed in the previous macroblock.

따라서, 화면내 예측을 하기 전에 현재 매크로블록의 형식과 좌상측의 매크로블록쌍D의 형식을 고려하여 상기 이전 매크로블록을 복원하는 과정에서 참조한 참조화소B나 상기 복원된 이전 매크로블록에서 필요한 참조화소D를 읽어 메모리에 저장하여 놓는다.Therefore, before the intra prediction, the reference pixel B referred to in the process of restoring the previous macroblock in consideration of the format of the current macroblock and the format of the upper left macroblock pair D or the reference pixel required in the restored previous macroblock Read D and store it in memory.

도 10은 MBAFF가 사용된 경우에 화면내 예측시 참조되는 참조 화소 A를 도시한 도면이다. FIG. 10 is a diagram illustrating a reference pixel A referred to in intra prediction when MBAFF is used.

이 경우에도 이전에 복원된 매크로블록쌍(매크로블록쌍A) 2종류와 현재 매크로블록쌍 2종류를 이용하여 4개의 조합을 생각할 수 있다. 그러나 참조화소A의 경우에는 상기 4개의 조합 모두 매크로블록쌍A의 가장 우측의 화소들을 참조화소A로 사용한다. Even in this case, four combinations can be considered using two types of macroblock pairs (macroblock pairs A) previously restored and two types of current macroblock pairs. However, in the case of the reference pixel A, all four combinations use the rightmost pixels of the macroblock pair A as the reference pixel A.

따라서, 상기 매크로블록쌍A의 최우측의 화소들을 다음 매크로블록쌍에서 참조화소A로 사용될 수 있도록 매 매크로블록쌍 단위로 상부/하부 매크로블록을 구분하여 메모리에 저장한다. Therefore, the pixels at the rightmost side of the macroblock pair A are stored in the memory by dividing the upper / lower macroblocks in units of macroblock pairs so that they can be used as reference pixels A in the next macroblock pair.

현재 매크로블록쌍의 화면내 예측을 수행하는 경우에, 현재 매크로블록쌍과 매크로블록쌍A의 조합에 따라서 상기 저장되어 있는 화소 중에서 H.264/AVC 표준에 따라 적합한 화소를 메모리로부터 읽어 참조한다.In the case of performing the intra prediction of the current macroblock pair, a suitable pixel is read from the memory according to the H.264 / AVC standard among the stored pixels according to the combination of the current macroblock pair and macroblock pair A.

상기에서 살펴본 바와 같이 현재 복원된 매크로블록쌍에서 이후의 매크로블 록쌍에서 화면내 예측시 참조될 가능성이 있는 화소는, 상기 매크로블록쌍이 필드 형식인 경우 상기 매크로블록쌍의 상부 매크로블록에서 가장 우측 열과 가장 아래 행, 하부 매크로블록에서 가장 우측 열과 가장 아래 행에 있다.As described above, a pixel that is likely to be referred to in intra prediction in a subsequent macroblock pair in the currently reconstructed macroblock pair may include a rightmost column in an upper macroblock of the macroblock pair when the macroblock pair is in field format. Bottom row, in the rightmost column and the bottom row in the lower macroblock.

상기 상부 매크로블록과 하부 매크로블록에서 가장 우측 열에 있는 화소는 참조화소A가 될 가능성이 있고, 상부 매크로블록과 하부 매크로블록의 가장 아래 행에 있는 화소는 참조화소B, C가 될 가능성이 있다.The pixels in the rightmost columns of the upper and lower macroblocks may be reference pixels A, and the pixels in the bottom row of the upper and lower macroblocks may be reference pixels B and C.

참조화소D는 화면내 예측을 수행하는 매크로블록쌍의 형식에 따라 다르나, 상부 매크로블록에서 가장 우측 열의 가장 아래 있는 하나의 화소와 하부 매크로블록에서 가장 우측 열의 가장 아래 있는 하나의 화소가 될 수 있다.The reference pixel D depends on the type of macroblock pair that performs intra prediction, but may be one pixel at the bottom of the rightmost column in the upper macroblock and one pixel at the bottom of the rightmost column in the lower macroblock. .

그리고 다음 매크로블록이 프레임 형식인 경우를 위해, 상기 복원된 매크로블록쌍의 하부 매크로블록을 반으로 나누었을 때 상기 나뉜 매크로블록 가운데 상부의 마지막 행 우측 하나의 화소가 참조화소D가 될 가능성이 있다.When the next macroblock is in a frame format, when the lower macroblock of the reconstructed macroblock pair is divided in half, there is a possibility that one pixel on the right side of the last row of the divided macroblock becomes the reference pixel D. .

상기 복원된 매크로블록쌍이 프레임 형식인 경우 상기 매크로블록쌍의 상부 매크로블록에서 가장 우측 열, 하부 매크로블록에서 가장 우측 열과 가장 아래 행, 및 상기 하부 매크로블록에서 가장 아래 행의 바로 윗 행에 있는 화소가 이후의 매크로 블록쌍에서 화면내 예측시 참조될 가능성이 있는 화소이다.The pixel in the rightmost column of the upper macroblock of the macroblock pair, the rightmost column and the bottom row of the lower macroblock, and the rightmost row of the bottom macroblock of the macroblock pair Is a pixel that is likely to be referred to in intra-picture prediction in subsequent macroblock pairs.

상기 상부 매크로블록과 하부 매크로블록에서 가장 우측 열에 있는 화소는 참조화소A가 될 수 있고, 하부 매크로블록에서 가장 아래 행에 있는 화소와 상기 가장 아래 행의 바로 윗 행이 참조화소B, C가 될 수 있다.The pixels in the rightmost column of the upper macroblock and the lower macroblock may be reference pixels A, and the pixel in the bottom row of the lower macroblock and the row immediately above the bottom row may be reference pixels B and C. Can be.

참조화소D는 화면내 예측을 수행하는 매크로블록쌍의 형식에 따라 다르나, 하부 매크로블록에서 가장 우측 열의 가장 아래 있는 하나의 화소와 그 바로 윗 행에 있는 하나의 화소가 될 수 있다.The reference pixel D depends on the format of the macroblock pair for performing intra prediction, but may be one pixel at the bottom of the rightmost column and one pixel at the top row of the lower macroblock.

그리고 다음 매크로블록이 프레임 형식인 경우를 위해, 상기 복원된 매크로블록쌍의 상부 매크로블록에서 마지막 행 우측 하나의 화소가 참조화소D가 될 가능성이 있다.For the case where the next macroblock is in a frame format, there is a possibility that one pixel on the right side of the last row becomes the reference pixel D in the upper macroblock of the reconstructed macroblock pair.

상기에서 설명한 바와 같이 MBAFF가 사용된 경우나, 사용되지 않은 경우 참조화소 A, D가 될 수 있는 화소는 그 데이터의 크기가 작거나 곧바로 참조된다. 그리고 참조화소 B, C가 될 수 있는 화소는 전 행에서 참조되는 것이고, 그 데이터의 크기가 크다.As described above, when MBAFF is used or when it is not used, pixels that may become reference pixels A and D are referred to as small or immediately referenced in size. The pixels that can be the reference pixels B and C are referred to in the previous row, and the size of the data is large.

따라서 상기 참조화소 A, D가 될 수 있는 화소의 경우에는 제1메모리(340)에 저장하고, 참조화소 B, C가 될 수 있는 화소의 경우에는 제2메모리(350)에 저장한다. Therefore, in the case of the pixels that may be the reference pixels A and D, the pixels are stored in the first memory 340, and in the case of the pixels that may be the reference pixels B and C, they are stored in the second memory 350.

또는, 참조화소 A가 될 수 있는 화소는 같은 행에서 참조되는 것이고, 참조화소 B, C, D가 될 수 있는 화소는 전 행에서 참조되는 것이므로 상기 참조화소 A가 될 수 있는 화소의 경우에는 제1메모리(340)에 저장하고, 참조화소 B, C, D가 될 수 있는 화소의 경우에는 제2메모리(350)에 저장할 수도 있다.Alternatively, a pixel that may be a reference pixel A is referred to in the same row, and a pixel that may be a reference pixel B, C, or D is referred to in the previous row. The pixels may be stored in the first memory 340 and stored in the second memory 350 in the case of pixels that may be reference pixels B, C, and D.

다만, 해상도가 작은 영상을 복호하는 경우와 같이 상기 제1메모리의 크기가 크지 않아도 되는 경우에는, 참조화소 A, B, C, D가 될 있는 화소를 모두 제1메모리(340)에 저장할 수 있다.However, when the size of the first memory does not need to be large, such as when decoding an image having a small resolution, all of the pixels to be the reference pixels A, B, C, and D may be stored in the first memory 340. .

상기 제1메모리(340)의 경우 SRAM(Static RAM) 등을 사용할 수 있고, 제2메 모리(350)의 경우에는 SDRAM(Synchronous Dynamic RAM) 등을 사용할 수 있다.In the case of the first memory 340, a static RAM (SRAM) may be used, and in the case of the second memory 350, a synchronous dynamic RAM (SDRAM) may be used.

상기 서술한 매크로블록 단위의 화면내 예측의 경우, MBAFF를 사용하는 경우에는 매크로블록쌍 단위의 참조화소A, B, C, D를 위해 제1메모리(340)와 제2메모리(350)의 내부에서 상부와 하부를 구분하게 된다.In the above-described intra-picture prediction in units of macroblocks, when MBAFF is used, internal portions of the first memory 340 and the second memory 350 are used for reference pixels A, B, C, and D in macroblock pair units. In the upper and lower parts will be distinguished.

MBAFF를 사용하지 않는 경우에는 매크로블록 단위로 참조화소 A, B, C, D를 저장하므로 상부와 하부를 구분하지 아니한다. 따라서, MBAFF를 사용하지 않는 경우에는 상기 상부와 하부로 나뉜 제1메모리(340)와 제2메모리(350)에서 상부나 하부만을 사용한다.When MBAFF is not used, reference pixels A, B, C, and D are stored in macroblock units, so the upper and lower parts are not distinguished. Therefore, when the MBAFF is not used, only the top or bottom portion of the first memory 340 and the second memory 350 divided into the top and bottom portions are used.

상기와 같은 경우에 MBAFF에 상관없이 상기 제1메모리(340)와 제2메모리(350)를 함께 공유하여 사용할 수 있다. In such a case, the first memory 340 and the second memory 350 may be shared and used regardless of the MBAFF.

도 11은 본 발명에 따른 일 실시예로서 비디오 복호방법의 순서를 도시한 순서도이다.11 is a flowchart illustrating a procedure of a video decoding method as an embodiment according to the present invention.

복호기에서는 입력되는 비트스트림에 대하여 엔트로피 복호, 역양자화, 역변환 등을 수행한 후에 화면내 예측, 움직임 보상 등을 수행한다.The decoder performs entropy decoding, inverse quantization, inverse transformation, and the like on the input bitstream, and then performs intra prediction and motion compensation.

본 발명에 따른 비디오 복호방법에서는 먼저 MBAFF가 사용되었는지 여부를 판단한다(S1100). 화면내 예측에 있어서 MBAFF가 사용되지 않았으면 매크로블록 단위로 화소가 참조되고, MBAFF가 사용되었으면 매크로블록쌍 단위로 화소가 참조된다.In the video decoding method according to the present invention, it is first determined whether MBAFF is used (S1100). Pixels are referenced in units of macroblocks when MBAFF is not used in intra prediction, and pixels are referenced in units of macroblock pairs when MBAFF is used.

상기 MBAFF가 사용되었는지 여부의 판단에 따라 복원된 화소 가운데 다음 매크로블록에서 참조될 가능성이 있는 화소들을 추출하여 메모리에 저장한다(S1110). 단, MBAFF가 사용된 경우에는 매크로블록쌍 단위로 수행된다.According to the determination of whether the MBAFF is used, pixels which may be referred to in the next macroblock among the reconstructed pixels are extracted and stored in the memory (S1110). However, when MBAFF is used, it is performed in units of macroblock pairs.

상기 S1110에서 저장되어 있는 화소들 가운데 현재 화면내 예측을 수행하는 매크로블록에서 필요한 참조화소들을 판단하여 상기 메모리에서 독출한다(S1120).Among the pixels stored in S1110, reference pixels required in a macroblock for performing the current intra prediction are determined and read from the memory (S1120).

상기 S1120에서 독출한 참조화소들을 이용하여 현재 매크로블록의 화면내 예측을 수행한다(S1130).Intra-prediction of the current macroblock is performed using the reference pixels read in S1120 (S1130).

본 발명은 상술한 실시예에 한정되지 않으며, 첨부된 청구범위에서 알 수 있는 바와 같이 본 발명이 속한 분야의 통상의 지식을 가진 자에 의해 변형이 가능하고 이러한 변형은 본 발명의 범위에 속한다.It is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.

이상에서 설명한 바와 같이 본 발명의 비디오 복호기 및 복호방법에 따르면, 메모리를 효율적으로 관리하므로 복호를 빠르게 진행할 수 있는 효과가 있다. As described above, according to the video decoder and the decoding method of the present invention, since the memory is efficiently managed, the decoding can be performed quickly.

또한, 복호시 사용되는 메모리의 공간을 절약할 수 있고, 상기 메모리에 데이터를 저장하거나, 데이터를 독출하는 시간을 줄여 메모리의 대역폭을 줄일 수 있는 효과가 있다. In addition, it is possible to save space of the memory used for decoding, and to reduce the bandwidth of the memory by reducing the time for storing data or reading data in the memory.

Claims (14)

블록단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 저장하는 저장부;A storage unit which stores, among blocks reconstructed in units of blocks, pixels that may be referred to in intra prediction; 현재 매크로블록에 대하여 상기 저장부에 저장된 참조화소를 참조하여 화면내 예측을 수행하는 화면내 예측부; 및An intra prediction unit configured to perform intra prediction by referring to a reference pixel stored in the storage unit with respect to a current macroblock; And 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소들을 추출하여 상기 저장부에 저장하고, 상기 저장부에 저장된 화소 가운데 현재 매크로블록의 화면내 예측에 필요한 참조화소를 독출하여 상기 화면내 예측부로 전송하는 참조화소 처리부를 포함하는 것을 특징으로 하되,From the reconstructed pixels, pixels that are likely to be referred to in the intra prediction are extracted and stored in the storage unit, and among the pixels stored in the storage unit, reference pixels necessary for the intra prediction of the current macroblock are read out to the intra prediction unit. It characterized in that it comprises a reference pixel processing unit for transmitting, 상기 저장부가 상기 화면내 예측에서 참조화소로 참조될 가능성이 있는 화소를 모두 저장하는 내부 메모리인 경우, When the storage unit is an internal memory that stores all the pixels that are likely to be referred to as reference pixels in the intra prediction, 상기 화면내 예측에서 참조화소로 참조될 가능성이 있는 화소는,Pixels likely to be referred to as reference pixels in the intra prediction MBAFF가 사용되지 않은 경우에는, 복원된 블록에서 가장 우측 열에 있는 화소, 상기 블록에서 가장 아래 행에 있는 화소 및 상기 블록에서 가장 아래 행의 가장 우측에 있는 하나의 화소 중 적어도 하나를 포함하는 것을 특징으로 하는 비디오 복호기. If the MBAFF is not used, at least one of a pixel in the rightmost column of the reconstructed block, a pixel in the bottom row of the block, and one pixel in the rightmost row of the bottom row in the block. Video decoder. 삭제delete 삭제delete 삭제delete 블록단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 저장하는 저장부;A storage unit which stores, among blocks reconstructed in units of blocks, pixels that may be referred to in intra prediction; 현재 매크로블록에 대하여 상기 저장부에 저장된 참조화소를 참조하여 화면내 예측을 수행하는 화면내 예측부; 및An intra prediction unit configured to perform intra prediction by referring to a reference pixel stored in the storage unit with respect to a current macroblock; And 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소들을 추출하여 상기 저장부에 저장하고, 상기 저장부에 저장된 화소 가운데 현재 매크로블록의 화면내 예측에 필요한 참조화소를 독출하여 상기 화면내 예측부로 전송하는 참조화소 처리부를 포함하는 것을 특징으로 하되,From the reconstructed pixels, pixels that are likely to be referred to in the intra prediction are extracted and stored in the storage unit, and among the pixels stored in the storage unit, reference pixels necessary for the intra prediction of the current macroblock are read out to the intra prediction unit. It characterized in that it comprises a reference pixel processing unit for transmitting, 상기 저장부가 상기 화면내 예측에서 참조화소로 참조될 가능성이 있는 화소를 모두 저장하는 내부 메모리인 경우, When the storage unit is an internal memory that stores all the pixels that are likely to be referred to as reference pixels in the intra prediction, 상기 화면내 예측에서 참조화소로 참조될 가능성이 있는 화소는,Pixels likely to be referred to as reference pixels in the intra prediction MBAFF가 사용되고 복원된 매크로블록쌍이 필드 형식인 경우에는,If MBAFF is used and the restored macroblock pair is in field format, 상기 매크로블록쌍의 상부 매크로블록에서 가장 우측 열에 있는 화소와 가장 아래 행에 있는 화소, 하부 매크로블록에서 가장 우측 열에 있는 화소와 가장 아래 행에 있는 화소, 상부 매크로블록에서 가장 아래 행의 가장 우측에 있는 하나의 화소, 하부 매크로블록에서 가장 아래 행의 가장 우측에 있는 하나의 화소 및 하부 매크로블록을 반으로 나누었을 때 상기 나뉜 매크로블록 가운데 상부의 마지막 행 우측 하나의 화소 중 적어도 하나를 포함하는 것을 특징으로 하는 비디오 복호기.The pixel in the rightmost column and the pixel in the bottom row of the upper macroblock of the macroblock pair, the pixel in the rightmost column and the pixel in the bottom row in the lower macroblock, and the rightmost row of the bottom row in the upper macroblock. At least one of one pixel in the lower macroblock, one pixel in the rightmost row of the lowermost row, and one pixel in the uppermost row of the last row of the divided macroblocks when the lower macroblock is divided in half. Video decoder. 블록단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 저장하는 저장부;A storage unit which stores, among blocks reconstructed in units of blocks, pixels that may be referred to in intra prediction; 현재 매크로블록에 대하여 상기 저장부에 저장된 참조화소를 참조하여 화면내 예측을 수행하는 화면내 예측부; 및An intra prediction unit configured to perform intra prediction by referring to a reference pixel stored in the storage unit with respect to a current macroblock; And 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소들을 추출하여 상기 저장부에 저장하고, 상기 저장부에 저장된 화소 가운데 현재 매크로블록의 화면내 예측에 필요한 참조화소를 독출하여 상기 화면내 예측부로 전송하는 참조화소 처리부를 포함하는 것을 특징으로 하되,From the reconstructed pixels, pixels that are likely to be referred to in the intra prediction are extracted and stored in the storage unit, and among the pixels stored in the storage unit, reference pixels necessary for the intra prediction of the current macroblock are read out to the intra prediction unit. It characterized in that it comprises a reference pixel processing unit for transmitting, 상기 저장부가 상기 화면내 예측에서 참조화소로 참조될 가능성이 있는 화소를 모두 저장하는 내부 메모리인 경우, When the storage unit is an internal memory that stores all the pixels that are likely to be referred to as reference pixels in the intra prediction, 상기 화면내 예측에서 참조화소로 참조될 가능성이 있는 화소는,Pixels likely to be referred to as reference pixels in the intra prediction MBAFF가 사용되고 복원된 매크로블록쌍이 프레임 형식인 경우에는,If MBAFF is used and the restored macroblock pair is in frame format, 상기 매크로블록쌍의 상부 매크로블록에서 가장 우측 열에 있는 화소, 하부 매크로블록에서 가장 우측 열에 있는 화소와 가장 아래 행에 있는 화소, 상기 하부 매크로블록에서 가장 아래 행의 바로 윗 행에 있는 화소, 하부 매크로블록에서 가장 아래 행의 가장 우측에 있는 하나의 화소, 상기 하부 매크로블록에서 가장 아래 행의 바로 윗 행에서 가장 우측에 있는 하나의 화소 및 상부 매크로블록에서 마지막 행 우측 하나의 화소 중 적어도 하나를 포함하는 것을 특징으로 하는 비디오 복호기.The pixel in the rightmost column of the upper macroblock of the macroblock pair, the pixel in the rightmost column of the lower macroblock and the pixel in the bottom row, the pixel in the row immediately above the lowest row in the lower macroblock, the lower macro At least one of one pixel at the rightmost of the bottom row in the block, one pixel at the rightmost in the row immediately above the bottom row in the lower macroblock, and one pixel at the right of the last row in the upper macroblock. And a video decoder. 블록단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 저장하는 저장부;A storage unit which stores, among blocks reconstructed in units of blocks, pixels that may be referred to in intra prediction; 현재 매크로블록에 대하여 상기 저장부에 저장된 참조화소를 참조하여 화면내 예측을 수행하는 화면내 예측부; 및An intra prediction unit configured to perform intra prediction by referring to a reference pixel stored in the storage unit with respect to a current macroblock; And 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소들을 추출하여 상기 저장부에 저장하고, 상기 저장부에 저장된 화소 가운데 현재 매크로블록의 화면내 예측에 필요한 참조화소를 독출하여 상기 화면내 예측부로 전송하는 참조화소 처리부를 포함하는 것을 특징으로 하되,From the reconstructed pixels, pixels that are likely to be referred to in the intra prediction are extracted and stored in the storage unit, and among the pixels stored in the storage unit, reference pixels necessary for the intra prediction of the current macroblock are read out to the intra prediction unit. It characterized in that it comprises a reference pixel processing unit for transmitting, 상기 저장부는,Wherein, 화면내 예측을 위해 사용하는 내부 메모리와, 다른 구성요소와 공유할 수 있는 외부 메모리로 구성되고,상기 내부 메모리와 상기 외부 메모리에서 화면내 예측에서 참조화소로 참조될 가능성이 있는 화소를 구분하여 저장하는 것을 특징으로 하며,It consists of an internal memory used for intra prediction and an external memory that can be shared with other components, and stores the internal memory and the pixels that may be referred to as reference pixels in the intra prediction in the external memory. Characterized in that, 상기 내부 메모리에 저장되는 화소는,Pixels stored in the internal memory, MBAFF가 사용되지 않은 경우에는 복원된 블록에서 가장 우측 열에 있는 화소 또는 상기 블록에서 가장 아래 행의 가장 우측에 있는 하나의 화소이고,If MBAFF is not used, it is the pixel in the rightmost column of the reconstructed block or the one pixel at the far right of the bottom row in the block, MBAFF가 사용되고 복원된 매크로블록쌍이 필드 형식인 경우에는, 상기 매크로블록쌍의 상부 매크로블록에서 가장 우측 열에 있는 화소와 하부 매크로블록에서 가장 우측 열에 있는 화소, 상부 매크로블록에서 가장 아래 행의 가장 우측에 있는 하나의 화소, 하부 매크로블록에서 가장 아래 행의 가장 우측에 있는 하나의 화소 및 하부 매크로블록을 반으로 나누었을 때 상기 나뉜 매크로블록 가운데 상부의 마지막 행 우측 하나의 화소 중 적어도 하나를 포함하고,If MBAFF is used and the restored macroblock pair is in the field format, the pixel in the rightmost column of the upper macroblock of the macroblock pair, the pixel in the rightmost column of the lower macroblock, and the rightmost of the bottom row of the upper macroblock. At least one of one pixel, one pixel on the rightmost side of the lowermost row in the lower macroblock, and one pixel on the right of the last row of the upper row among the divided macroblocks when divided into half, MBAFF가 사용되고 복원된 매크로블록쌍이 프레임 형식인 경우에는, 상기 매크로블록쌍의 상부 매크로블록에서 가장 우측 열에 있는 화소, 하부 매크로블록에서 가장 우측 열에 있는 화소, 하부 매크로블록에서 가장 아래 행의 가장 우측에 있는 하나의 화소, 상기 하부 매크로블록에서 가장 아래 행의 바로 윗 행에서 가장 우측에 있는 하나의 화소 및 상부 매크로블록에서 마지막 행 우측 하나의 화소 중 적어도 하나를 포함하는 것을 특징으로 하는 비디오 복호기.When MBAFF is used and the restored macroblock pair is a frame format, the pixel in the rightmost column of the upper macroblock of the macroblock pair, the pixel in the rightmost column of the lower macroblock, and the rightmost of the bottom row in the lower macroblock. And at least one of one pixel, one pixel rightmost in the row immediately above the bottom row in the lower macroblock, and one pixel right row last in the upper macroblock. 삭제delete 삭제delete 블록단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 저장하는 저장부;A storage unit which stores, among blocks reconstructed in units of blocks, pixels that may be referred to in intra prediction; 현재 매크로블록에 대하여 상기 저장부에 저장된 참조화소를 참조하여 화면내 예측을 수행하는 화면내 예측부; 및An intra prediction unit configured to perform intra prediction by referring to a reference pixel stored in the storage unit with respect to a current macroblock; And 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소들을 추출하여 상기 저장부에 저장하고, 상기 저장부에 저장된 화소 가운데 현재 매크로블록의 화면내 예측에 필요한 참조화소를 독출하여 상기 화면내 예측부로 전송하는 참조화소 처리부를 포함하는 것을 특징으로 하되,From the reconstructed pixels, pixels that are likely to be referred to in the intra prediction are extracted and stored in the storage unit, and among the pixels stored in the storage unit, reference pixels necessary for the intra prediction of the current macroblock are read out to the intra prediction unit. It characterized in that it comprises a reference pixel processing unit for transmitting, 상기 저장부는,Wherein, 화면내 예측을 위해 사용하는 내부 메모리와, 다른 구성요소와 공유할 수 있는 외부 메모리로 구성되고,상기 내부 메모리와 상기 외부 메모리에서 화면내 예측에서 참조화소로 참조될 가능성이 있는 화소를 구분하여 저장하는 것을 특징으로 하며,It consists of an internal memory used for intra prediction and an external memory that can be shared with other components, and stores the internal memory and the pixels that may be referred to as reference pixels in the intra prediction in the external memory. Characterized in that, 상기 외부 메모리에 저장되는 화소는,Pixels stored in the external memory, MBAFF가 사용되지 않은 경우에는 복원된 블록에서 가장 아래 행에 있는 화소이고, If MBAFF is not used, it is the pixel in the bottom row of the restored block. MBAFF가 사용되고 복원된 매크로블록쌍이 필드 형식인 경우에는 상기 매크로블록쌍의 상부 매크로블록에서 가장 아래 행에 있는 화소 또는 하부 매크로블록에서 가장 아래 행에 있는 화소이고,When MBAFF is used and the reconstructed macroblock pair is a field format, it is the pixel in the bottom row in the upper macroblock of the macroblock pair or in the bottom row in the lower macroblock. MBAFF가 사용되고 복원된 매크로블록쌍이 프레임 형식인 경우에는 상기 매크로블록쌍의 하부 매크로블록에서 가장 아래 행에 있는 화소 또는 상기 하부 매크로블록에서 가장 아래 행의 바로 윗 행에 있는 화소인 것을 특징으로 하는 비디오 복호기.If MBAFF is used and the restored macroblock pair is in a frame format, the video is characterized in that it is a pixel in the bottom row of the lower macroblock of the macroblock pair or a pixel in the row immediately above the bottom row of the lower macroblock. Decoder. 블록 단위로 복원된 화소 가운데 화면내 예측에서 참조될 가능성이 있는 화소를 추출하여 저장하는 단계;Extracting and storing a pixel which may be referred to in intra prediction among pixels reconstructed in block units; 상기 저장되어 있는 화소 가운데 현재 화면내 예측을 수행하는 블록에서 필요한 참조화소를 독출하는 단계; 및Reading a reference pixel required from a block for performing current intra prediction among the stored pixels; And 상기 독출한 참조화소를 이용하여 현재 블록의 화면내 예측을 수행하는 단계를 포함하는 것을 특징으로 하고,And performing intra prediction on the current block by using the read reference pixel. 상기 저장 단계는, The storing step, 복원된 화소 가운데 화면내 예측에서 참조화소 A와 D로 참조될 가능성이 있는 화소는 화면내 예측을 위해 사용하는 내부 메모리에 저장하고, 화면내 예측에서 참조화소 B와 C로 참조될 가능성이 있는 화소는 다른 구성요소와 공유할 수 있는 외부 메모리에 저장하는 것을 특징으로 하는 비디오 복호방법.Pixels that are likely to be referred to as reference pixels A and D in the intra prediction, among the reconstructed pixels, are stored in the internal memory used for intra prediction, and are likely to be referred to as reference pixels B and C in the intra prediction. Is stored in an external memory which can be shared with other components. 삭제delete 삭제delete 제 11 항에 있어서,The method of claim 11, 상기 저장 단계는,The storing step, MBAFF가 사용되지 않은 경우 매크로블록 단위로 화소를 저장하고, MBAFF가 사용된 경우에는 매크로블록쌍 단위로 화소를 저장하는 것을 특징으로 하는 비디오 복호방법.If the MBAFF is not used, the pixel is stored in units of macroblocks, and when the MBAFF is used, the pixel is stored in units of macroblock pairs.
KR1020060118419A 2006-11-28 2006-11-28 Video decoder and decoding method KR101328931B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060118419A KR101328931B1 (en) 2006-11-28 2006-11-28 Video decoder and decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060118419A KR101328931B1 (en) 2006-11-28 2006-11-28 Video decoder and decoding method

Publications (2)

Publication Number Publication Date
KR20080048262A KR20080048262A (en) 2008-06-02
KR101328931B1 true KR101328931B1 (en) 2013-11-14

Family

ID=39804512

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060118419A KR101328931B1 (en) 2006-11-28 2006-11-28 Video decoder and decoding method

Country Status (1)

Country Link
KR (1) KR101328931B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101782978B1 (en) 2010-11-12 2017-09-29 삼성전자주식회사 Apparatus for decoding image data based on availability of reference data and method of the same
KR102294830B1 (en) 2014-01-03 2021-08-31 삼성전자주식회사 Display drive device and method of operating image data processing device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030007087A (en) * 2001-07-09 2003-01-23 삼성전자 주식회사 Motion estimation apparatus and method for scanning a reference macroblock window in a search area
KR20030073120A (en) * 2002-03-08 2003-09-19 주식회사 엘지이아이 Implementation method for intra prediction mode of movie in embedded system
KR20060003426A (en) * 2004-07-06 2006-01-11 삼성전자주식회사 Pipeline decoding apparatus and method, and computer-readable recording media for storing computer program for controlling the apparatus
KR20070110635A (en) * 2006-05-15 2007-11-20 브이케이 주식회사 Intra prediction process, method and apparatus for image encoding and decoding process using the intra prediction process

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030007087A (en) * 2001-07-09 2003-01-23 삼성전자 주식회사 Motion estimation apparatus and method for scanning a reference macroblock window in a search area
KR20030073120A (en) * 2002-03-08 2003-09-19 주식회사 엘지이아이 Implementation method for intra prediction mode of movie in embedded system
KR20060003426A (en) * 2004-07-06 2006-01-11 삼성전자주식회사 Pipeline decoding apparatus and method, and computer-readable recording media for storing computer program for controlling the apparatus
KR20070110635A (en) * 2006-05-15 2007-11-20 브이케이 주식회사 Intra prediction process, method and apparatus for image encoding and decoding process using the intra prediction process

Also Published As

Publication number Publication date
KR20080048262A (en) 2008-06-02

Similar Documents

Publication Publication Date Title
CN109479140B (en) Signaling of quantization information in video coding other than quadtree partitioning only
US11451773B2 (en) Block-based adaptive loop filter (ALF) design and signaling
US11405611B2 (en) Predicting filter coefficients from fixed filters for video coding
CN107277539B (en) Method and apparatus for reducing line cache in context adaptive entropy decoding
US9380311B2 (en) Method and system for generating a transform size syntax element for video decoding
JP2020092457A (en) Image prediction method and apparatus
US9167269B2 (en) Determining boundary strength values for deblocking filtering for video coding
JP5022446B2 (en) H264 / MPEG-4AVC codec with reduced memory
US20180063531A1 (en) Unification of parameters derivation procedures for local illumination compensation and cross-component linear model prediction
US20160105685A1 (en) Boundary filtering and cross-component prediction in video coding
JP7463460B2 (en) Video decoding method and video decoder
JP2021530124A (en) Methods, devices, and systems for encoding and decoding converted blocks of video samples.
US20180098065A1 (en) Peak sample adaptive offset
TWI776071B (en) Method, apparatus and system for encoding and decoding a transformed block of video samples
US20200021850A1 (en) Video data decoding method, decoding apparatus, encoding method, and encoding apparatus
CN103155564A (en) Image processing device and method
US20190320172A1 (en) Hardware-friendly sample adaptive offset (sao) and adaptive loop filter (alf) for video coding
KR20220122666A (en) Encoding method, decoding method, encoder, decoder and storage medium
JP2007221697A (en) Image decoding apparatus and image decoding method
CN116584096A (en) Luma dependent chroma prediction for video coding
CN116830576A (en) Reference pixel upsampling for intra prediction in video coding
JP2011250400A (en) Moving picture encoding apparatus and moving picture encoding method
KR101328931B1 (en) Video decoder and decoding method
CN116419001A (en) System and method for performing planar intra-prediction video coding
TWI840427B (en) Scans and last coefficient position coding for zero-out transforms

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

Year of fee payment: 7