KR101063423B1 - Deblock filtering method and apparatus - Google Patents

Deblock filtering method and apparatus Download PDF

Info

Publication number
KR101063423B1
KR101063423B1 KR1020090018630A KR20090018630A KR101063423B1 KR 101063423 B1 KR101063423 B1 KR 101063423B1 KR 1020090018630 A KR1020090018630 A KR 1020090018630A KR 20090018630 A KR20090018630 A KR 20090018630A KR 101063423 B1 KR101063423 B1 KR 101063423B1
Authority
KR
South Korea
Prior art keywords
unit blocks
previous
processing
filtering
macroblock
Prior art date
Application number
KR1020090018630A
Other languages
Korean (ko)
Other versions
KR20100100002A (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 KR1020090018630A priority Critical patent/KR101063423B1/en
Publication of KR20100100002A publication Critical patent/KR20100100002A/en
Application granted granted Critical
Publication of KR101063423B1 publication Critical patent/KR101063423B1/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/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/117Filters, e.g. for pre-processing or post-processing
    • 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

Landscapes

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

Abstract

본 발명의 일 실시예에 따른 디블록 필터링 방법은 이전 매크로블록들에 포함되는 제 1 이전 단위 블록들 및 제 2 이전 단위 블록들을 준비하는 단계; 디블록 필터링을 수행할 처리 매크로블록에 포함되는 처리 단위 블록들을 준비하는 단계; 상기 제 1 및 제 2 이전 단위 블록들 및 상기 제 1 이전 단위 블록들과 인접한 처리 단위 블록들의 정보를 이용하여 상기 제 1 이전 단위 블록들을 디블록 필터링하는 단계; 및 상기 제 1 및 제 2 이전 단위 블록들 및 상기 처리 단위 블록의 정보를 이용하여 적어도 하나의 상기 처리 단위 블록을 디블록 필터링하는 단계를 포함한다. 본 발명에 따르면, 영상 데이터의 디코딩 과정에서 요구되는 내부메모리의 용량을 감소시킬 수 있고, 외부메모리 액세스에 필요한 대역폭을 감소시킬 수 있다.Deblocking filtering method according to an embodiment of the present invention comprises the steps of preparing the first previous unit blocks and the second previous unit blocks included in the previous macroblocks; Preparing processing unit blocks included in a processing macroblock to perform deblocking filtering; Deblocking the first previous unit blocks by using information of the first and second previous unit blocks and the processing unit blocks adjacent to the first previous unit blocks; And deblocking filtering the at least one processing unit block by using information of the first and second previous unit blocks and the processing unit block. According to the present invention, the capacity of the internal memory required in the decoding process of the image data can be reduced, and the bandwidth required for accessing the external memory can be reduced.

Description

디블록 필터링 방법 및 장치{Method and apparatus for deblock filtering}Deblock filtering method and apparatus {Method and apparatus for deblock filtering}

본 발명은 영상 처리에 관한 것으로 보다 상세하게는 영상 데이터에 대한 디블록 필터링 방법 및 장치에 관한 것이다. The present invention relates to image processing, and more particularly, to a method and apparatus for deblocking filtering of image data.

비디오 디코딩(video decoding)에서 블로킹(blocking) 현상을 제거하기 위해 디블록 필터링(deblock filtering)이 종종 사용된다. 블로킹 현상은 복원된 영상에서 시각적으로 인지 가능하게 블록간의 경계가 단절되어 나타나는 블록화 현상을 의미한다. 블로킹 현상은 영상 데이터를 블록 단위로 압축 부호화한 후 디코딩하는 과정에서 발생하는데, 상기 블록 단위의 압축 부호화 과정에는 입력 영상의 손실이 생기는 양자화 과정이 포함되어 있기 때문이다. 그리고, 디코딩 시에 이전 영상이나 현재 영상의 이웃 블록을 참조하는 과정에서 블록마다 서로 다른 이웃 블록을 참조하는 경우가 있기 때문에 복원된 영상에서 블로킹 현상이 발생한다. Deblock filtering is often used to remove the blocking phenomenon in video decoding. The blocking phenomenon refers to a blocking phenomenon in which a boundary between blocks is visually recognizable in a reconstructed image. The blocking phenomenon occurs in the process of compressing and decoding the image data in block units, since the block encoding process includes a quantization process in which an input image is lost. In the process of referring to a neighboring block of a previous or current image at the time of decoding, a blocking phenomenon occurs in the reconstructed image because different blocks are referred to different blocks for each block.

이러한 블로킹 현상을 감소시키기 위해 디코딩된 각각의 매크로블록에 대해 디블록 필터로 디블록 필터링을 한다. 디블록 필터는 블록의 가장자리를 부드럽게 하여 디코딩된 프레임의 화질을 향상시키도록 하는 필터이다. 디블록 필터로 필터 링된 이미지는 미래 프레임의 움직임 보상 예측을 위해 사용될 수 있다. 이러한 경우, 미래 프레임이 원본 영상에 더 충실하게 복원되기 때문에 압축 성능을 향상시킬 수 있다. To reduce this blocking phenomenon, deblocking filtering is performed with a deblocking filter for each decoded macroblock. The deblock filter is a filter for smoothing the edges of blocks to improve the quality of decoded frames. The image filtered with the deblocking filter can be used for motion compensated prediction of future frames. In this case, the compression performance can be improved because the future frame is more faithfully restored to the original image.

상술한 디코딩 및 디블록 필터링 과정은 임베디드(embedded) 환경에서 수행되는 경우가 많다. 임베디드 환경에서는 내부메모리의 크기를 작게 하는 것이 중요하며, 외부메모리에 액세스(access)하는데 필요한 대역폭을 줄이는 것이 중요하다.The above decoding and deblocking filtering process is often performed in an embedded environment. In an embedded environment, it is important to reduce the size of internal memory, and it is important to reduce the bandwidth required to access external memory.

본 발명이 이루고자 하는 기술적 과제는 영상 데이터에 대한 디블록 필터링 과정에서 요구되는 내부메모리의 용량을 감소시키고, 외부메모리 액세스에 필요한 대역폭을 감소시키는 방법 및 장치를 제공하는 것이다. An object of the present invention is to provide a method and apparatus for reducing the capacity of the internal memory required in the deblocking filtering process for image data and reducing the bandwidth required for external memory access.

이러한 기술적 과제를 해결하기 위하여 본 발명은 일 측면(Aspect)에서 디블록 필터링 방법을 제공한다. 상기 디블록 필터링 방법은 이전 매크로블록들에 포함되는 제 1 이전 단위 블록들 및 제 2 이전 단위 블록들을 준비하는 단계; 디블록 필터링을 수행할 처리 매크로블록에 포함되는 처리 단위 블록들을 준비하는 단계; 상기 제 1 및 제 2 이전 단위 블록들 및 상기 제 1 이전 단위 블록들과 인접한 처리 단위 블록들의 정보를 이용하여 상기 제 1 이전 단위 블록들을 디블록 필터링하는 단계; 및 상기 제 1 및 제 2 이전 단위 블록들 및 상기 처리 단위 블록의 정보 를 이용하여 적어도 하나의 상기 처리 단위 블록을 디블록 필터링하는 단계를 포함한다. In order to solve this technical problem, the present invention provides a deblocking filtering method in an aspect. The deblocking filtering method may include preparing first previous unit blocks and second previous unit blocks included in previous macroblocks; Preparing processing unit blocks included in a processing macroblock to perform deblocking filtering; Deblocking the first previous unit blocks by using information of the first and second previous unit blocks and the processing unit blocks adjacent to the first previous unit blocks; And deblocking filtering the at least one processing unit block by using information of the first and second previous unit blocks and the processing unit block.

상술한 기술적 과제를 해결하기 위하여 본 발명은 다른 측면에서 디블록 필터링 장치를 제공한다. 상기 디블록 필터링 장치는 디블록 필터링을 수행할 처리 매크로블록의 처리 단위 블록들 및 이전 매크로블록들의 제 1 이전 단위 블록들 및 제 2 이전 단위 블록들을 저장하는 내부 메모리; 및 상기 내부메모리에 저장된 단위 블록들을 이용하여 디블록 필터링을 수행하되, 상기 제 1 이전 단위 블록들에 대한 디블록 필터링을 우선적으로 수행한 후 상기 처리 단위 블록들 중 적어도 하나의 단위 블록에 대한 디블록 필터링을 수행하는 디코딩 프로세서를 포함한다.In order to solve the above technical problem, the present invention provides a deblocking filtering device in another aspect. The deblocking filtering device may include an internal memory configured to store processing unit blocks of a processing macroblock and first previous unit blocks and second previous unit blocks of previous macroblocks to perform deblocking filtering; And deblocking filtering using the unit blocks stored in the internal memory, and performing deblocking filtering on the first previous unit blocks first, and then performing deblocking on at least one unit block among the processing unit blocks. And a decoding processor for performing block filtering.

이상 설명한 바와 같이, 본 발명에 따른 디블록 필터링 방법 및 장치는 영상의 디코딩 과정에서 요구되는 내부메모리의 용량을 감소시킬 수 있고, 외부메모리 액세스에 필요한 대역폭을 감소시킬 수 있다. As described above, the deblocking filtering method and apparatus according to the present invention can reduce the capacity of the internal memory required in the decoding process of an image and reduce the bandwidth required for accessing the external memory.

이하에서는 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. 도면에서 각 구성 요소의 구조나 크기는 설명의 편의 및 명확성을 위하여 과장될 수 있고, 설명과 관계없는 부분은 생략되었다. 도면상에서 동일 부호는 동일한 요소를 지칭한다. 한편, 사용되는 용어들은 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the structure or size of each component may be exaggerated for convenience and clarity of description, and parts irrelevant to the description are omitted. Like numbers refer to like elements in the figures. On the other hand, the terms used are used only for the purpose of illustrating the present invention and are not used to limit the scope of the invention described in the meaning or claims.

도 1은 영상의 디코딩(decoding) 과정을 나타낸 블록도이다. 도 1에 도시된 바와 같이, 디코딩 과정은 엔트로피(entropy) 디코딩(110), 역양자화(Inverse Quantization,120), 역변환(Inverse Transform, 130), 인트라/인터 예측(Intra/Inter prediction, 140), 디블록 필터링(Deblock filtering,150)으로 구성된다. 1 is a block diagram illustrating a decoding process of an image. As shown in FIG. 1, the decoding process includes entropy decoding 110, inverse quantization 120, inverse transform 130, intra / inter prediction 140, Deblock filtering (150).

엔트로피 디코딩(110)은 VLC(Variable-Length Coding)에 의해 부호화된 입력스트림을 복호화하는 과정이다. 상기 입력스트림에는 헤더(header)정보, 디코딩 파라미터, 정수 변환(Integer Transform) 정보 등을 포함한다. 엔트로피 디코딩(110)을 통해 복호화되는 것은 MD(Motion Difference), 레지듀얼(residual) 등이다. Entropy decoding 110 is a process of decoding an input stream encoded by Variable-Length Coding (VLC). The input stream includes header information, decoding parameters, integer transform information, and the like. The decoding through the entropy decoding 110 is a motion difference (MD), a residual, and the like.

역양자화(120) 과정은 MD, 레지듀얼 등을 제공받아 역양자화한다. 역양자화 (120)과정에서는 부호화시에 사용된 양자화값을 이용하여 역양자화한다. Inverse quantization (120) process is provided by MD, residual, and the like to dequantize. In the inverse quantization process 120, inverse quantization is performed using a quantization value used in encoding.

역양자화된 정보는 역변환(예를 들면, IDCT)된다. 역변환(130) 과정에서 4x4 DCT와 같은 특성을 갖는 정수변환(Integer Transform)이 수행될 수 있다. 역양자화(120)와 역변환(130) 과정을 통해 참조 프레임과 현재 프레임 간의 차이값에 관한 정보를 생성한다. 인트라/인터 예측(140)은 상기 참조 프레임과 현재 프레임 간의 차이값에 관한 정보를 이용하여 현재 프레임을 디코딩한다. Inverse quantized information is inverse transformed (eg, IDCT). An integer transform having a characteristic such as 4x4 DCT may be performed in the inverse transform 130. The inverse quantization 120 and the inverse transform 130 generate information about the difference between the reference frame and the current frame. Intra / inter prediction 140 decodes the current frame using information about the difference between the reference frame and the current frame.

디블록 필터링(150)은 디코딩된 현재 프레임에서 블록간에 발생하는 블록킹(blocking) 현상을 개선한다. 본 발명에 따른 디블록 필터링 방법 및 장치는 이러한 디블록 필터링 과정에 적용될 수 있다. The deblock filtering 150 improves the blocking phenomenon that occurs between blocks in the current decoded frame. The deblocking filtering method and apparatus according to the present invention can be applied to such a deblocking filtering process.

도 2는 디블록 필터링이 수행되는 하나의 프레임(frame)을 개념적으로 나타낸 도면이다. FIG. 2 conceptually illustrates one frame in which deblocking filtering is performed.

도 2에서 매크로블록(Macro Block, MB, 201)을 MB(n,,m)(여기서, 0≤n≤N, 0≤m≤M, n,m은 정수, N,M은 자연수 중 어느 하나로 프레임의 크기에 따라 결정된다)으로 나타낸다. 이하에서 매크로블록(201)을 편의상 MB(n,m)와 같은 형식으로 나타내기로 한다. 이때, 상기 n은 프레임(100) 상에서 매크로블록의 열(column)번호를 표시하고, 상기 m은 매크로블록의 행(row)번호를 표시한다. In FIG. 2, the macroblock MB, 201 is represented by MB (n ,, m) (where 0 ≦ n ≦ N, 0 ≦ m ≦ M, n, m is an integer, and N, M is any one of natural numbers). Determined by the size of the frame). Hereinafter, the macroblock 201 will be described in a format such as MB (n, m) for convenience. In this case, n denotes a column number of the macroblock on the frame 100, and m denotes a row number of the macroblock.

도 2에 도시된 바와 같이, 하나의 프레임(100)은 다수개의 매크로블록(201)으로 구성된다. 매크로블록(201)에 대하여 상측에 인접한(contiguous) 매크로블록을 상측 매크로블록, 좌측에 인접한(contiguous)한 매크로블록을 좌측 매크로블록, 좌측이면서 상측 즉 좌상측에 위치한 매크로블록을 좌상측 매크로블록, 하측에 인접한(contiguous) 매크로블록을 하측 매크로블록이라고 칭한다. 예를 들어, 도 2에 도시된 MB(n,m)에 대해 MB(n, m-1)은 상측 매크로블록, MB(n-1, m)은 좌측 매크로블록, MB(n-1, m-1)은 좌상측 매크로블록, MB(n, m-1)는 하측 매크로블록에 해당한다. As shown in FIG. 2, one frame 100 includes a plurality of macroblocks 201. The macroblock 201 is the upper macroblock in the upper (contiguous) macroblock, the macroblock in the left side (contiguous) is the left macroblock, the macroblock located on the left and the upper side, that is, the upper left is the upper macroblock, Contiguous macroblocks below are referred to as lower macroblocks. For example, for MB (n, m) shown in FIG. 2, MB (n, m-1) is an upper macroblock, and MB (n-1, m) is a left macroblock, MB (n-1, m). -1) corresponds to the upper left macroblock, and MB (n, m-1) corresponds to the lower macroblock.

상술한 프레임(100) 상에서 디블록 필터링은 동일한 행 (row)에 속하는 매크로블록들에 대해 가장 왼쪽부터 오른쪽 방향으로 순차적으로 수행된다. 동일한 행(row)에 위치에 매크로블록들에 대한 디블록 필터링이 수행된 후, 그 아래에 인접한 행에 위치한 매크로블록들에 대해 가장 왼쪽에서 오른쪽 방향으로 순차적으로 디블록 필터링이 수행된다. 예를 들어, 도 2에서 MB(0,0)에서 MB(N,0)의 방향으로 디블록 필터링이 진행된 후, MB(0,1)에서 MB(N,1)방향으로 디블록 필터링이 진행된다. Deblock filtering on the above-described frame 100 is sequentially performed from left to right for macroblocks belonging to the same row. After deblocking filtering of macroblocks is performed at a position in the same row, deblocking filtering is sequentially performed in the left-to-right direction with respect to macroblocks located in an adjacent row below it. For example, after deblocking filtering is performed in the direction of MB (0,0) to MB (N, 0) in FIG. 2, deblocking filtering is performed in the direction of MB (0,1) to MB (N, 1). do.

이러한 디블록 필터링의 진행 방향의 측면에서 임의의 매크로블록에 대해 좌측 매크로블록, 상측 매크로블록, 좌상측 매크로블록은 이전 매크로블록이라고 할 수 있다. 예를 들어, 도 2에서 MB(n,m)에 대해 MB(n-1, m), MB(n,m-1), MB(n-1, m-1)등은 이전 매크로블록이다. 그러나 MB(n+1, m)이나 MB(n, m+1) 등은 이전 매크로블록이 아니고 이후의 매크로블록이다.In terms of the advancing direction of the deblocking filtering, the left macroblock, the upper macroblock, and the upper left macroblock for any macroblock may be referred to as the previous macroblock. For example, in FIG. 2, MB (n-1, m), MB (n, m-1), MB (n-1, m-1), etc., for MB (n, m) are previous macroblocks. However, MB (n + 1, m) and MB (n, m + 1) are not macroblocks before, but macroblocks after.

도 3은 매크로블록을 나타낸 개념도이다. 도 3을 참조하면, 매크로블록(201)은 16 x 16 픽셀 사이즈를 가질 수 있다. 매크로블록(201)은 다수개의 N x N (N은 2 이상의 자연수) 픽셀 사이즈를 가지는 단위 블록으로 분할될 수 있다. 상기 N은 예컨대 4일 수 있는데, 그러한 경우 단위 블록(301)은 4x4 픽셀 사이즈를 가지고, 하나의 매크로블록(201)은 16개의 단위 블록(301)을 포함한다. 도 3에서 MB(n, m)에 대한 단위 블록들을 편의상 MB(n,m)_k (여기서, 1≤k≤16, k는 자연수)의 형식으로 표시하고 있다. MB(n,m)_k에서 MB(n,m)은 어느 매크로블록인지를 표시하고, _k는 어느 단위 블록인지를 표시한다. 3 is a conceptual diagram illustrating a macroblock. Referring to FIG. 3, the macroblock 201 may have a size of 16 × 16 pixels. The macroblock 201 may be divided into a unit block having a plurality of N × N (N is a natural number of 2 or more) pixel sizes. N may be, for example, 4, in which case the unit block 301 has a 4x4 pixel size, and one macroblock 201 includes 16 unit blocks 301. In FIG. 3, the unit blocks for MB (n, m) are expressed in the form of MB (n, m) _k (where 1 ≦ k ≦ 16 and k is a natural number). In MB (n, m) _k, MB (n, m) indicates which macroblock and _k indicates which unit block.

도 4는 디블록 필터링이 적용되는 단위 블록의 경계영역을 도시한 도면이다. 4 is a diagram illustrating a boundary area of a unit block to which deblocking filtering is applied.

도 4를 참조하면, 디블록 필터링은 단위 블록간의 경계영역(401, 402, 403)에 적용된다. 이 때, 각 경계영역(401, 402, 403)에 적용되는 필터링은 다를 수 있으며, 순서가 있다. Referring to FIG. 4, deblocking filtering is applied to boundary regions 401, 402, and 403 between unit blocks. In this case, the filtering applied to each of the boundary regions 401, 402, and 403 may be different, and there is a sequence.

예를 들어, 먼저 MB(n,m)_1과 MB(n, m)_5가 접하는 경계선을 기준으로 서로 대칭되는 동일한 수의 픽셀을 포함하는 영역(401)에는 위크(weak) 필터링이 적용된다. 그 다음으로 MB(n,m)_1과 MB(n-1, m)_4가 접하는 경계선을 기준으로 서로 대칭되는 동일한 수의 픽셀을 포함하는 영역(402)에 위크(weak) 필터링이 적용된다. 그리고, MB(n,m)_1과 MB(n, m-1)_13이 접하는 경계선을 기준으로 서로 대칭되는 동일한 수의 픽셀을 포함하는 영역(403)에 스트롱 필터링이 적용된다. 그 다음으로 MB(n,m)_1과 MB(n-1, m)_4가 접하는 경계선을 기준으로 서로 대칭되는 동일한 수의 픽셀을 포함하는 영역(402)에 스트롱 필터링이 적용된다. 결과적으로, 상기 영역(402)에는 위크 필터링 및 스트롱 필터링이 시간을 달리하여 모두 적용된다. For example, weak filtering is applied to an area 401 including the same number of pixels that are symmetrical to each other based on a boundary line between MB (n, m) _1 and MB (n, m) _5. Then, weak filtering is applied to the region 402 including the same number of pixels symmetrically with respect to the boundary line between MB (n, m) _1 and MB (n-1, m) _4. Strong filtering is applied to an area 403 including the same number of pixels that are symmetrical to each other based on a boundary line between MB (n, m) _1 and MB (n, m-1) _13. Strong filtering is then applied to the region 402 containing the same number of pixels symmetrical to each other based on the boundary line between MB (n, m) _1 and MB (n-1, m) _4. As a result, weak filtering and strong filtering are applied to the region 402 at different times.

여기서, 위크(weak) 필터링은 위크(weak) 2/3 탭(tap) 필터(이하 위크 필터) 또는 노멀(normal) 4/3 탭 필터(이하 노멀 필터)를 사용한 필터링을 의미한다. 그리고, 스트롱(strong) 필터링은 스트롱 5 탭 필터(이하 스트롱 필터)를 사용한 필터링을 의미한다. Here, the weak filtering means filtering using a weak 2/3 tap filter (hereinafter referred to as a weak filter) or a normal 4/3 tap filter (hereinafter referred to as a normal filter). In addition, strong filtering means filtering using a Strong 5 tap filter (hereinafter, referred to as a Strong filter).

상기 위크(weak) 필터, 노멀(normal) 필터, 스트롱 필터 중 어느 필터를 사용하여 필터링 할 것인지는 각 단위 블록의 “세기(strength)” 값과 매크로블록의 경계에 해당하는지 여부에 따라 결정된다. 단위 블록의 경계에서 세기가 2이고 매크로블록의 경계인 경우, 스트롱 필터링이 수행된다. 단위 블록의 경계에서 상기 세기가 0보다 크고 2보다 작으면 위크 필터링이 수행된다. 그 외의 경우에는 필터링이 수행되지 않는다. 또한, 단위 블록 중에서 매크로블록의 경계에 위치하지 않은 단위 블록에서는 스트롱 필터링이 수행되지 않는다. 예를 들어, MB(n,m)_1과 MB(n, m-1)_13이 접하는 경계 및 MB(n,m)_1과 MB(n-1, m)_4가 접하는 경계는 매크 로블록의 경계이므로 해당 경계영역(402, 403)에 스트롱 필터링이 수행될 수 있다. 그러나, MB(n,m)_1과 MB(n, m)_5의 경계영역(401)에는 스트롱 필터링이 수행되지 않는다. Whether to filter using the weak filter, the normal filter, or the strong filter is determined according to the “strength” value of each unit block and whether it corresponds to the boundary of the macroblock. When the intensity is 2 at the boundary of the unit block and the boundary of the macroblock, strong filtering is performed. If the strength is greater than 0 and less than 2 at the boundary of the unit block, weak filtering is performed. Otherwise, no filtering is performed. In addition, strong filtering is not performed in the unit block not located at the boundary of the macro block among the unit blocks. For example, the boundary between MB (n, m) _1 and MB (n, m-1) _13 and the boundary between MB (n, m) _1 and MB (n-1, m) _4 are the macroblocks. Since the boundary is strong, strong filtering may be performed on the boundary regions 402 and 403. However, strong filtering is not performed on the boundary region 401 of MB (n, m) _1 and MB (n, m) _5.

상기 위크(weak) 필터, 노멀(normal) 필터, 스트롱 필터를 사용한 필터링 및 상기 필터링이 적용되는 경계영역에 대해서는 리얼 비디오 9 문서(RealNetworks, “RealVideo. 9”, External Specification, Version 1.8, September 11, 2007.)에 상세히 기술되어 당업자에게 자명하다. 따라서, 더 이상의 설명은 생략한다.Filtering using the weak filter, the normal filter, the strong filter, and the boundary area to which the filtering is applied are described in RealNetworks, “RealVideo. 9”, External Specification, Version 1.8, September 11, 2007.) will be apparent to those skilled in the art. Therefore, further description is omitted.

도 5는 단위 블록의 경계영역에 적용되는 디블록 필터링의 연산순서와 필터링 종류를 나타내는 방법을 예시한 도면이다. FIG. 5 is a diagram illustrating a method for describing a calculation order and a filtering type of deblocking filtering applied to a boundary area of a unit block.

도 5에 도시된 (1), (2)에서 숫자 1 또는 2는 필터링 순서를 나타낸다. 즉, (1)이 먼저 수행되고, (2)가 수행된다는 의미이다. 그리고 괄호 ()는 위크(weak) 필터링이 수행되는 것을 나타낸다. 이하에서 상기 (1)과 같이 임의의 단위 블록에서 아래수평방향에 대한 위크 필터링을 편의를 위해 간략히 HDW(Horizontal-Down-Weak filtering)라고 칭하기로 한다. HDW에서 H는 수평방향을 나타내고, D는 단위 블록의 아래방향이라는 의미이며, W는 필터링 종류를 나타낸다. 또한 (2)와 같이 임의의 단위 블록에서 왼쪽수직방향에 대한 위크 필터링을 편의상 VLW(Vertical-Left-Weak filtering)이라고 칭하기로 한다. VLW에서 V는 수직방향, L은 왼쪽, W는 위크 필터링을 나타낸다. Numerals 1 or 2 in (1) and (2) shown in FIG. 5 indicate a filtering order. That is, (1) is performed first, and (2) is performed. And parentheses () indicate that weak filtering is performed. In the following, weak filtering in the horizontal direction in any unit block as in (1) will be referred to simply as HDW (Horizontal-Down-Weak filtering) for convenience. In HDW, H denotes a horizontal direction, D denotes a downward direction of a unit block, and W denotes a filtering type. Also, as shown in (2), weak filtering in the left vertical direction in an arbitrary unit block will be referred to as vertical-left-weak filtering (VLW) for convenience. In VLW, V is vertical, L is left, and W is weak filtering.

도 5에 도시된 ③, ④에서 ○(원,circle)내부의 숫자 3 또는 4는 필터링 순서를 나타낸다. 즉, ③은 (2) 이후에 수행되어야 하고, ④는 ③이후에 수행되어야 한다. ③, ④에서 ○(circle)은 스트롱 필터링이 수행되는 것을 나타낸다(이하에서, ③과 같은 표기를 편의를 위해 <3>과 같이 표시할 수도 있다. 즉,<3>은 ③과 같은 표기이고, <4>는 ④와 같은 표기이다). 이하에서 ③과 같이 임의의 단위 블록에서 위쪽수평방향에 대한 스트롱 필터링을 편의상 HUS(Horizontal-Up-Strong filtering)이라 칭하기로 한다. HUS에서 H는 수평방향, U는 위쪽방향, S는 스트롱 필터링을 의미한다. 또한, ④와 같이 임의의 단위 블록에서 왼쪽수직방향에 대한 스트롱 필터링을 편의상 VLS(Vertical-Left-Strong filtering)이라 칭하기로 한다. In Figures 3 and 4, the numbers 3 or 4 in the circle (circle) indicate filtering order. That is, ③ must be executed after (2), and ④ must be performed after ③. (Circle) in (3) and (4) indicates that strong filtering is performed (hereinafter, for the sake of convenience, a notation such as ③ may be expressed as <3>, ie, <3> is notation such as ③, <4> is the same notation as ④). In the following, strong filtering on an up horizontal direction in an arbitrary unit block will be referred to as HUS (Horizontal-Up-Strong filtering) for convenience. In HUS, H means horizontal, U means upward, and S means strong filtering. In addition, as in ④, strong filtering in the left vertical direction in an arbitrary unit block will be referred to as VLS (Vertical-Left-Strong filtering) for convenience.

정리하면, 단위 블록의 필터링 순서는 HDW, VLW, HUS, VLS의 순서이다. 이 순서는 먼저 수평방향으로 필터링을 수행한 후 수직방향으로 필터링을 수행하고, 위크(weak) 필터링을 수행한 후 스트롱(strong) 필터링을 수행해야 하는 “Real Video 9”의 제한을 만족한다. 단, 상술한 바와 같이 HUS, VLS는 단위 블록의 경계가 매크로블록의 경계에 해당하지 않으면 수행되지 않을 수 있다. In summary, the filtering order of the unit blocks is HDW, VLW, HUS, VLS. This sequence satisfies the limitation of “Real Video 9”, which requires filtering in the horizontal direction, filtering in the vertical direction, and performing strong filtering after performing weak filtering. However, as described above, the HUS and VLS may not be performed unless the boundary of the unit block corresponds to the boundary of the macroblock.

이하에서는 본 실시예에 따른 디블록 필터링의 특징 및 장점을 명확히 나타내기 위해 종래의 디블록 필터링 연산 순서 및 필터 종류에 대해 먼저 설명한다. Hereinafter, in order to clearly show the features and advantages of the deblocking filtering according to the present embodiment, a conventional deblocking filtering operation sequence and filter type will be described.

도 6은 종래의 디블록 필터링 연산 순서 및 필터 종류를 나타내는 도면이다. 도 6에 도시된 바와 같이, 종래의 디블록 필터링은 현재 처리하고자 하는 매크로블록(이하 처리 매크로블록이라 한다) 외에 이후의 매크로블록이 필요하다. 예컨대, 도 2에서 처리 매크로블록이 MB(n,m) 이라고 할 때, 이후의 매크로블록인 MB(n, m+1)이 필요하다. 왜냐하면, 도 6에 도시된 (13), (14), (15), (16) 필터링 과정은 이후의 매크로블록인 MB(n,m+1)에 대한 단위 블록들 즉, MB(n,m+1)_1 내지 MB(n,m+1)_4을 이용하기 때문이다. 따라서, 도 6과 같은 방식에 의하여서는 이전 매크로블록만으로 처리 매크로블록에 대한 디블록 필터링이 불가능하다. 6 is a diagram illustrating a conventional deblocking filtering operation sequence and filter type. As shown in FIG. 6, the conventional deblocking filtering requires the following macroblocks in addition to the macroblocks to be currently processed (hereinafter referred to as processing macroblocks). For example, when the processing macroblock is MB (n, m) in Fig. 2, MB (n, m + 1), which is a subsequent macroblock, is required. Because, the filtering process of (13), (14), (15), and (16) shown in FIG. 6 is a unit block for MB (n, m + 1), that is, a macroblock, that is, MB (n, m). This is because +1) _1 to MB (n, m + 1) _4 are used. Therefore, according to the method as shown in FIG. 6, deblocking filtering on the processed macroblock is not possible using only the previous macroblock.

그 결과, 종래에는 모든 매크로블록을 디코딩한 후, 프레임 버퍼에 일차적으로 저장하고, 처리 매크로블록(즉, MB(n,m))와 상측 매크로블록, 좌측 매크로블록, 하측 매크로블록(즉, MB(n,m-1), MB(n-1,m), MB(n,m+1))의 일부 단위 블록들을 내부메모리로 다시 가져온다. 그 후, 도 6와 같은 방식으로 디블록 필터링을 수행한다. 이러한 종래의 방식은 내부메모리에 28개의 단위 블록들이 저장되어야 한다.As a result, conventionally, after decoding all macroblocks, they are first stored in a frame buffer, and processed macroblocks (ie, MB (n, m)), upper macroblocks, left macroblocks, and lower macroblocks (ie, MBs). Some unit blocks of (n, m-1), MB (n-1, m) and MB (n, m + 1) are brought back into the internal memory. Thereafter, deblocking filtering is performed in the same manner as in FIG. 6. This conventional method requires 28 unit blocks to be stored in the internal memory.

도 7은 본 실시예에 따른 디블록 필터링 장치를 나타낸 블록도이다. 도 7에 도시된 바와 같이 디블록 필터링 장치(700)는 디코딩 프로세서(710), 내부메모리(722), GOB버퍼(721)를 포함한다. 7 is a block diagram illustrating a deblocking filtering apparatus according to the present embodiment. As shown in FIG. 7, the deblocking filtering device 700 includes a decoding processor 710, an internal memory 722, and a GOB buffer 721.

디코딩 프로세서(710)는 단위 블록을 디코딩하고, 디코딩된 단위 블록들에 대해 디블록 필터링을 수행하는 부분이다. The decoding processor 710 is a part for decoding a unit block and performing deblocking filtering on the decoded unit blocks.

내부메모리(722)는 디블록 필터링 장치(700) 내부에 위치하는 메모리로 디코딩 프로세서(710)에서 처리할 단위 블록들을 저장하는 메모리이다. 내부메모리(722)는 디코딩 프로세서(710)와 직접 연결되어 매우 속도가 빠르지만, 내부메모리(722)의 용량이 커지는 것은 비용측면에서 바람직하지 않다. 내부메모리(722)는 처리 매크로블록과 이전 매크로블록에 대한 단위 블록을 저장할 수 있다. The internal memory 722 is a memory located inside the deblocking filtering device 700 and stores the unit blocks to be processed by the decoding processor 710. Although the internal memory 722 is directly connected to the decoding processor 710 and is very fast, it is not preferable to increase the capacity of the internal memory 722 in terms of cost. The internal memory 722 may store processing macro blocks and unit blocks for previous macro blocks.

GOB버퍼(721)는 현재 처리하고자 하는 매크로블록인 처리 매크로블록에 대해 하측에 인접한(contiguous) 하측 매크로블록의 디블록 필터링 시에 사용하기 위해 상기 처리 매크로블록의 마지막 행에 속하는 단위 블록들을 저장하는 특정 버퍼이 다. 상기 GOB버퍼(721)는 하나의 매크로블록에 대한 단위 블록들만을 저장하는 것은 아니고, 다수개의 매크로블록에 대한 단위 블록들을 저장할 수 있다.The GOB buffer 721 stores unit blocks belonging to the last row of the processing macroblock for use in deblocking filtering of a contiguous lower macroblock with respect to the processing macroblock that is the macroblock to be processed. It is a specific buffer. The GOB buffer 721 may not only store unit blocks for one macroblock, but may store unit blocks for a plurality of macroblocks.

외부메모리(730)는 전체 프레임을 구성하는 매크로블록들을 저장하는 부분이다. 디코딩 프로세서(710)에 의해 디블록 필터링이 완료된 단위 블록들은 외부메모리(730)로 다시 저장된다. The external memory 730 is a part for storing macro blocks constituting the entire frame. The unit blocks whose deblocking filtering is completed by the decoding processor 710 are stored back into the external memory 730.

도 8은 디블록 필터링 장치의 내부메모리에 저장되는 단위 블록들을 개념적으로 나타내는 도면이다. 도 8에 도시된 바와 같이, 내부메모리(722)에는 24개의 단위 블록이 저장된다. 상기 24개의 단위 블록은 디블록 필터링을 수행할 처리 매크로블록의 처리 단위 블록들과 이전 매크로블록들에 포함되는 제 1 이전 단위 블록들 및 제 2 이전 단위 블록들이다. FIG. 8 is a diagram conceptually illustrating unit blocks stored in an internal memory of a deblocking filtering device. As shown in FIG. 8, 24 unit blocks are stored in the internal memory 722. The 24 unit blocks are processing unit blocks of the processing macroblock to perform deblocking filtering and first previous unit blocks and second previous unit blocks included in the previous macroblocks.

여기서, 처리 단위 블록들은 처리 매크로블록에 포함되는 모든 단위 블록들을 의미한다. 제 1 이전 단위 블록들은 처리 매크로블록의 상측에 인접한(contiguous) 단위 블록들을 의미한다. 그리고, 제 2 이전 단위 블록들은 처리 매크로블록의 좌측에 인접한(contiguous) 적어도 하나의 단위 블록들과 처리 매크로블록의 좌상측에 인접한 단위 블록을 의미한다. Here, the processing unit blocks mean all unit blocks included in the processing macroblock. The first previous unit blocks mean contiguous unit blocks above the processing macroblock. The second previous unit blocks mean at least one unit block contiguous to the left of the processing macroblock and a unit block adjacent to the upper left side of the processing macroblock.

예를 들어, 도 8에서 처리 매크로블록을 MB(n,m)이라고 표시하고 있다. 이, 때, 처리 단위 블록들은 MB(n,m)_1 내지 MB(n,m)_16의 16개 단위 블록들이다. 그리고, 제 1 이전 단위 블록들은 MB(n,m-1)_13 내지 MB(n,m-1)_16의 4개 단위 블록들이다. 또한, 제 2 이전 단위 블록들은 MB(n-1, m)_4, MB(n-1, m)_8, MB(n-1, m)_12의 3개 단위 블록들과 MB(n-1,m-1)_16이다. For example, in Fig. 8, the processing macroblock is indicated as MB (n, m). In this case, the processing unit blocks are 16 unit blocks of MB (n, m) _1 to MB (n, m) _16. The first previous unit blocks are four unit blocks of MB (n, m-1) _13 to MB (n, m-1) _16. In addition, the second previous unit blocks include three unit blocks MB (n-1, m) _4, MB (n-1, m) _8, MB (n-1, m) _12 and MB (n-1, m-1) _16.

도 9는 본 실시예에 따른 디블록 필터링 방법을 나타내는 흐름도이다. 9 is a flowchart illustrating a deblocking filtering method according to the present embodiment.

도 9을 참조하여, 디코딩 프로세서(710)는 이전 매크로블록들로부터 제 1이전 이전 단위 블록들 및 제 2 이전 단위 블록들을 준비한다(S91). 상기 제 1 이전 단위 블록들은 디코딩 프로세서(710)가 GOB버퍼(721)로부터 내부메모리(722)로 로드(load)하여 준비한다. Referring to FIG. 9, the decoding processor 710 prepares first previous previous unit blocks and second previous unit blocks from previous macroblocks (S91). The first previous unit blocks are prepared by loading the decoding processor 710 from the GOB buffer 721 into the internal memory 722.

도 10은 GOB버퍼로부터 내부메모리로 제 1 이전 단위 블록들을 로드(load)하는 과정을 개념적으로 도시한 예시도이다. 10 is an exemplary diagram conceptually illustrating a process of loading first previous unit blocks from a GOB buffer into internal memory.

도 10에 도시한 바와 같이 MB(n,m-1)의 마지막 행에 해당하는 단위 블록들 즉, MB(n, m-1)_13 내지 MB(n,m-1)_16의 4개 단위 블록들을 GOB버퍼(721)로부터 내부메모리(722)로 로드한다. As shown in FIG. 10, the unit blocks corresponding to the last row of MB (n, m-1), that is, four unit blocks of MB (n, m-1) _13 to MB (n, m-1) _16 Are loaded from the GOB buffer 721 into the internal memory 722.

제 2 이전 단위 블록들은 디코딩 프로세서(710)가 단위 블록들의 내부메모리(722)상의 위치를 변경하여 준비한다. The second previous unit blocks are prepared by the decoding processor 710 by changing the position on the internal memory 722 of the unit blocks.

도 11은 제 2 이전 단위 블록들을 준비하는 과정을 개념적으로 나타내고 있다. 도 11에 도시된 것처럼, 내부메모리(722)에 있는 MB(n-1, m-1)_16, MB(n-1, m)_4, MB(n-1, m)_8, MB(n-1, m)_12 단위 블록들(80)을 내부메모리(722) 상에서 위치를 변경하여 왼쪽 가장자리 영역에 복사하여 준비한다. 11 conceptually illustrates a process of preparing second previous unit blocks. As shown in Fig. 11, MB (n-1, m-1) _16, MB (n-1, m) _4, MB (n-1, m) _8, MB (n-) in the internal memory 722. 1, m) _12 unit blocks 80 are prepared by copying them to the left edge region by changing their positions on the internal memory 722.

디코딩 프로세서(710)가 외부메모리로부터 디블록 필터링을 수행할 처리 매크로블록의 처리 단위 블록들을 준비한다(S92). The decoding processor 710 prepares the processing unit blocks of the processing macroblock to perform deblocking filtering from the external memory (S92).

도 12는 처리 단위 블록들을 준비하는 과정을 개념적으로 도시한 도면이다. 도 12에서 도시된 것처럼 디코딩 프로세서(710)가 외부메모리(730)에서 처리 단위 블록들을 내부메모리(722)로 로딩하여 준비한다. 12 is a diagram conceptually illustrating a process of preparing processing unit blocks. As shown in FIG. 12, the decoding processor 710 prepares by loading the processing unit blocks from the external memory 730 into the internal memory 722.

처리 단위 블록들, 제 1 및 제 2 이전 단위 블록들이 준비되면, 디코딩 프로세서(710)는 먼저 상기 제 1 이전 단위 블록들을 디블록 필터링한다(S93). When the processing unit blocks, the first and the second previous unit blocks are prepared, the decoding processor 710 first deblocks the first previous unit blocks (S93).

제 1 이전 단위 블록에 대한 디블록 필터링 후에 디코딩 프로세서(710)는 처리 단위 블록에 대한 디블록 필터링을 수행한다(S94). 이 때, 처리 매크로블록의 마지막 행에 속하는 단위 블록들은 제외하고, 나머지 단위 블록들에 대해 디블록 필터링을 수행할 수 있다.After deblocking filtering on the first previous unit block, the decoding processor 710 performs deblocking filtering on the processing unit block (S94). At this time, except for the unit blocks belonging to the last row of the processing macroblock, the deblocking filtering may be performed on the remaining unit blocks.

도 13은 디블록 필터링 과정에서 단위 블록들에 적용하는 필터링의 종류 및 순서를 나타내는 도면이다. FIG. 13 is a diagram illustrating the type and order of filtering applied to unit blocks in a deblocking filtering process.

도 13을 참조하면, 제 1 이전 단위 블록들을 디블록 필터링하는 단계(S93)는 상기 제 1 이전 단위 블록들에 대해 수평 방향에 대한 디블록 필터링을 수행하는 단계 및 상기 제 1 이전 단위 블록들에 대해 수직 방향에 대한 디블록 필터링을 수행하는 단계를 포함한다. Referring to FIG. 13, in operation S93, deblocking filtering of the first previous unit blocks may be performed by performing deblocking filtering on the first previous unit blocks in a horizontal direction and on the first previous unit blocks. Performing deblocking filtering on the vertical direction.

즉, 제 1 이전 단위 블록들에 대해 아래쪽 수평 방향(도 13에서 (1) 내지 (4))에 대한 디블록 필터링을 먼저 수행한 후, 수직 방향에 대한 디블록 필터링을 수행한다. 상기 아래쪽 수평 방향의 필터링 시에 가장 좌측에 있는 단위 블록부터 위크 필터링(도 13에서 (1))을 수행할 수 있다. 그 후, 차례로 우측에 있는 단위 블록들을 순서대로 위크 필터링을 수행한다(도 13에서 (2) 내지 (4)). That is, deblocking filtering for the first horizontal unit blocks (1 to 4 in FIG. 13) is first performed on the first previous unit blocks, and then deblocking filtering for the vertical direction is performed. During filtering in the lower horizontal direction, weak filtering ((1) in FIG. 13) may be performed from the leftmost unit block. Then, weak filtering is sequentially performed on the unit blocks on the right side ((2) to (4) in FIG. 13).

그 후, 수직 방향에 대한 디블록 필터링을 수행한다. 상기 수직 방향에 대한 디블록 필터링은 가장 좌측에 있는 단위 블록에 대한 위크 필터링(도 13의 (5)), 스트롱 필터링(도 13의 ⑥)을 하고 순차적으로 오른쪽에 있는 단위 블록들에 위크 필터링을 한다(도 13의 (7) 내지 (9)).Thereafter, deblocking filtering on the vertical direction is performed. The deblocking filtering in the vertical direction performs weak filtering (FIG. 13 (5)) and strong filtering (⑥ in FIG. 13) for the leftmost unit block and sequentially performs weak filtering on the right unit blocks. ((7)-(9) of FIG. 13).

상기 제 1 이전 단위 블록들에 대한 디블록 필터링이 종료되면, 처리 단위 블록들 중 적어도 하나의 단위 블록에 대한 디블록 필터링을 수행한다(S94). 도 13을 참조하면, MB(n,m)_1 내지 MB(n,m)_12에 대하여 (10)에서 까지 순차적으로 필터링을 수행한다. 이 과정에서, 처리 매크로블록의 단위 블록들 중에서 마지막 행(row)에 속하는 단위 블록들(MB(n,m)_13 내지 MB(n,m)_16)은 제외하고 디블록 필터링을 수행할 수 있다. When the deblocking filtering on the first previous unit blocks ends, the deblocking filtering on at least one unit block among the processing unit blocks is performed (S94). Referring to FIG. 13, filtering is performed sequentially from (10) to MB (n, m) _1 to MB (n, m) _12. In this process, deblocking filtering may be performed except for the unit blocks MB (n, m) _13 to MB (n, m) _16 belonging to the last row among the unit blocks of the processing macroblock. .

상기 마지막 행에 속하는 단위 블록들은 MB(n,m)의 디블록 필터링 과정에서 디블록 필터링을 하지 않고 MB(n,m+1)에 대한 디블록 필터링 과정에서 디블록 필터링할 수 있다. The unit blocks belonging to the last row may be deblocked in the deblocking process for MB (n, m + 1) without performing deblocking filtering in the deblocking process of MB (n, m).

도 13에 도시된 바와 같은 순서를 따라 디블록 필터링을 수행하는 경우, 각 단위 블록에 대한 디블록 필터링 순서는 HDW, VLW, HUS, VLS이다. 예컨대, MB(n,m)_1에 대한 필터링을 살펴보면, HDW((10)), VLW((22)), HUS(<25>), VLS(<26>)의 순서임을 알 수 있다. 상술한 바와 같이 HUS, VLS는 단위 블록의 경계가 매크로블록의 경계가 아닌 경우에는 적용되지 않는다. 따라서, 매크로블록의 경계를 포함하지 않는 단위 블록의 경우에는 상기 HUS, VLS는 하지 않을 수 있다. 예컨대, MB(n,m)_6의 경우, HDW((15)), VLW((30))가 수행되며, 스트롱 필터링은 포함하지 않는다.When deblocking filtering is performed in the order shown in FIG. 13, the deblocking filtering order for each unit block is HDW, VLW, HUS, and VLS. For example, looking at the filtering for MB (n, m) _1, it can be seen that HDW ((10)), VLW ((22)), HUS (<25>), and VLS (<26>). As described above, HUS and VLS are not applied when the boundary of the unit block is not the boundary of the macroblock. Therefore, in the case of the unit block that does not include the boundary of the macroblock, the HUS and VLS may not be performed. For example, in the case of MB (n, m) _6, HDW (15) and VLW (30) are performed, and strong filtering is not included.

도 13에 도시된 (1) 내지 <40>의 디블록 필터링이 완료되면, 디코딩 프로세 서(710)는 디블록 필터링이 완료된 단위 블록들을 외부메모리(730)에 백업한다(S95). When the deblocking filtering of (1) to (40) shown in FIG. 13 is completed, the decoding processor 710 backs up the unit blocks on which the deblocking filtering is completed to the external memory 730 (S95).

도 14는 외부메모리에 디블록 필터링이 완료된 단위 블록들을 백업하는 것을 개념적으로 나타낸 도면이다. 도 14에 도시된 바와 같이, 디블록 필터링이 완료된 MB(n,m)_1 내지 MB(n,m)_3, MB(n,m)_5 내지 MB(n,m)_7, MB(n,m)_9 내지 MB(n,m)_11과 MB(n-1, m-1)_16, MB(n,m-1)_13 내지 MB(n, m-1)_15, MB(n-1, m)_4, MB(n-1, m)_8, MB(n-1, m)_12이 외부메모리(730)에 백업된다. FIG. 14 is a diagram conceptually illustrating backing up unit blocks having completed deblocking filtering to an external memory. FIG. As shown in FIG. 14, MB (n, m) _1 to MB (n, m) _3, MB (n, m) _5 to MB (n, m) _7, MB (n, m) having completed deblocking filtering ) _9 to MB (n, m) _11 and MB (n-1, m-1) _16, MB (n, m-1) _13 to MB (n, m-1) _15, MB (n-1, m ) _4, MB (n-1, m) _8 and MB (n-1, m) _12 are backed up to the external memory 730.

그 후, 디코딩 프로세서(710)는 다음 매크로블록의 디블록 필터링을 위해 처리 매크로블록의 디블록 필터링이 완료되지 않은 단위 블록들을 저장한다(S96). Thereafter, the decoding processor 710 stores unit blocks for which deblocking filtering of the processing macroblock is not completed for deblocking filtering of the next macroblock (S96).

도 15는 내부메모리에 저장된 단위블록들 중 디블록 필터링이 완료되지 않은 단위 블록들을 GOB버퍼에 저장하는 것을 개념적으로 나타낸 도면이다. 도 15에 도시된 바와 같이, MB(n,m)_13 내지 MB(n,m)_16 단위블록들이 GOB버퍼(721)에 저장된다. 즉, 디코딩 프로세서(710)는 MB(n,m)의 마지막 행에 속하는 단위블록들을 GOB버퍼(721)에 저장한다. 상기 MB(n,m)_13 내지 MB(n,m)_16 단위블록들은 MB(n,m)의 아래에 인접한(contiguous) MB(n,m+1)의 디블록 필터링 시에 사용된다.FIG. 15 is a diagram conceptually illustrating storing, in a GOB buffer, unit blocks in which deblocking filtering is not completed among unit blocks stored in an internal memory. As shown in FIG. 15, MB (n, m) _13 to MB (n, m) _16 unit blocks are stored in the GOB buffer 721. That is, the decoding processor 710 stores the unit blocks belonging to the last row of MB (n, m) in the GOB buffer 721. The MB (n, m) _13 to MB (n, m) _16 unit blocks are used for deblocking filtering of contiguous MB (n, m + 1) below MB (n, m).

상술한 과정을 통해 MB(n,m)에 대한 디블록 필터링이 종료되면, 상기 MB(n,m)의 오른쪽에 인접한(contiguous) MB(n+1, m) (도 2 참조)에 대한 디블록 필터링이 시작된다. When the deblocking filtering for MB (n, m) is completed through the above-described process, the decode for the contiguous MB (n + 1, m) (see FIG. 2) adjacent to the right of MB (n, m) is completed. Block filtering begins.

본 실시예에 따른 디블록 필터링 방법 및 디코더(700)는 종래의 기술에 비해 작은 내부메모리(722)를 이용하여 디블록 필터링을 수행할 수 있다. 즉, 내부메모 리(722)에 종래 29개의 단위블록들이 사용된 것에 비해 최대 24개의 단위블록들만을 사용한다. 이것은 큰 내부메모리를 두기 곤란한 임베디드 환경에서 매우 중요한 장점이 된다. 내부메모리가 작아지므로 외부메모리에 액세스(access)하기 위한 대역폭도 줄일 수 있다. The deblocking filtering method and the decoder 700 according to the present exemplary embodiment may perform deblocking filtering using an internal memory 722 which is smaller than that of the related art. That is, up to 24 unit blocks are used in the internal memory 722 as compared with 29 conventional unit blocks. This is a very important advantage in embedded environments where large internal memory is difficult to place. The smaller internal memory also reduces the bandwidth for accessing external memory.

또한, 아직 디코딩되지 않은 이후의 매크로블록에 대한 단위 블록들을 필요로 하지 않고, 이미 디코딩된 이전 매크로블록의 단위 블록들만으로 디블록 필터링 과정을 수행할 수 있다. 따라서, 디블록 필터링 수행 속도를 향상시킬 수 있다. In addition, the deblocking filtering process may be performed using only the unit blocks of the previous macroblock already decoded without requiring the unit blocks for the macroblocks not yet decoded. Therefore, it is possible to improve the deblocking filtering speed.

도 16은 상술한 디블록 필터링 장치를 포함하는 디코딩 장치를 나타내는 도면이다. 도 16에 도시된 바와 같이, 디코딩 장치는 수신회로(740), 디블록 필터링 장치(700), 외부메모리(730), 출력회로(760)를 포함한다. 16 is a diagram illustrating a decoding apparatus including the above-described deblocking filtering apparatus. As shown in FIG. 16, the decoding apparatus includes a receiving circuit 740, a deblocking filtering apparatus 700, an external memory 730, and an output circuit 760.

수신회로(740)는 압축 인코딩된 영상데이터를 수신하는 부분이다. 수신회로(740)는 수신된 영상데이터를 디블록 필터링 장치(700)로 전달한다. The receiving circuit 740 is a part for receiving compression encoded image data. The receiving circuit 740 transmits the received image data to the deblocking filtering device 700.

디블록 필터링 장치(700)는 영상데이터를 디코딩하고 디블록 필터링을 수행하는 부분이다. 디블록 필터링 장치(700)는 상술한 디블록 필터링 방법으로 디블록 필터링을 수행한다. 디블록 필터링 장치(700)는 먼저 영상데이터를 디코딩하고 외부메모리(730)에 저장한다. 그리고, 외부메모리(730)에 접근(access)하여 처리하고자 하는 매크로블록을 가져와 내부메모리(722)에 저장한 후, 디블록 필터링한다. 이 때, 한 프레임 전체에 대한 디코딩을 완료한 후 디블록 필터링을 시작하는 것이 아니라 디코딩이 완료된 소정의 매크로블록에 대해 디블록 필터링을 시작할 수 있다. 이전 매크로블록만으로 처리 매크로블록을 디블록 필터링 할 수 있기 때문이 다. 디블록 필터링이 완료된 부분은 다시 외부메모리(730)에 저장한다. 디블록 필터링 장치(700)는 내부에 디코딩 프로세서(710)와 내부메모리(722) 및 GOB버퍼를 포함한다. The deblocking filtering device 700 is a part for decoding image data and performing deblocking filtering. The deblocking filtering apparatus 700 performs deblocking filtering by the above-described deblocking filtering method. The deblocking filtering device 700 first decodes the image data and stores the image data in the external memory 730. The macroblock to be accessed and processed is stored in the internal memory 722 and then deblocked. In this case, the deblocking filtering may be started for a predetermined macroblock in which decoding is completed, instead of starting the deblocking filtering after the decoding of the entire frame is completed. This is because the processing macroblock can be deblocked filtered using only the previous macroblock. The deblocked filtering part is stored in the external memory 730 again. The deblocking filtering device 700 includes a decoding processor 710, an internal memory 722, and a GOB buffer therein.

외부메모리(730)는 디블록 필터링 장치(700)에서 디코딩된 매크로블록 또는 디블록 필터링까지 완료된 매크로블록에 대한 데이터를 제공받아 저장한다. The external memory 730 receives and stores data about the macroblock decoded by the deblocking filtering device 700 or the macroblock completed until the deblocking filtering.

출력회로(760)는 디블록 필터링이 완료된 데이터를 외부로 출력하는 회로이다. 출력회로(760)를 통해 외부로 출력된 데이터는 디스플레이 장치에 연결될 수 있다.The output circuit 760 is a circuit for outputting the data of which deblocking filtering is completed to the outside. Data output to the outside through the output circuit 760 may be connected to the display device.

지금까지, 본 발명을 도면에 표시된 실시예를 참고로 설명하였으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.So far, the present invention has been described with reference to the embodiments shown in the drawings, which are merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. . Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

도 1은 영상의 디코딩(decoding) 과정을 나타낸 블록도이다.1 is a block diagram illustrating a decoding process of an image.

도 2는 디블록 필터링이 수행되는 하나의 프레임(frame)을 개념적으로 나타낸 도면이다. FIG. 2 conceptually illustrates one frame in which deblocking filtering is performed.

도 3은 매크로블록을 나타낸 개념도이다.3 is a conceptual diagram illustrating a macroblock.

도 4는 디블록 필터링이 적용되는 단위 블록의 경계영역을 도시한 도면이다. 4 is a diagram illustrating a boundary area of a unit block to which deblocking filtering is applied.

도 5는 단위 블록의 경계영역에 적용되는 디블록 필터링의 연산순서와 필터링 종류를 나타내는 방법을 예시한 도면이다. FIG. 5 is a diagram illustrating a method for describing a calculation order and a filtering type of deblocking filtering applied to a boundary area of a unit block.

도 6은 종래의 디블록 필터링 연산 순서 및 필터 종류를 나타내는 도면이다.6 is a diagram illustrating a conventional deblocking filtering operation sequence and filter type.

도 7은 본 실시예에 따른 디블록 필터링 장치를 나타낸 블록도이다.7 is a block diagram illustrating a deblocking filtering apparatus according to the present embodiment.

도 8은 디블록 필터링 장치의 내부메모리에 저장되는 단위 블록들을 개념적으로 나타내는 도면이다.FIG. 8 is a diagram conceptually illustrating unit blocks stored in an internal memory of a deblocking filtering device.

도 9는 본 실시예에 따른 디블록 필터링 방법을 나타내는 흐름도이다. 9 is a flowchart illustrating a deblocking filtering method according to the present embodiment.

도 10은 GOB버퍼로부터 내부메모리로 제 1 이전 단위 블록들을 로드(load)하는 과정을 개념적으로 도시한 예시도이다. 10 is an exemplary diagram conceptually illustrating a process of loading first previous unit blocks from a GOB buffer into internal memory.

도 11은 제 2 이전 단위 블록들을 준비하는 과정을 개념적으로 나타내고 있다. 11 conceptually illustrates a process of preparing second previous unit blocks.

도 12는 디코딩 프로세서가 외부메모리로부터 현재 처리해야 할 매크로블록의 처리 단위 블록들을 준비하는 과정을 개념적으로 도시한 도면이다.FIG. 12 is a diagram conceptually illustrating a process in which a decoding processor prepares processing unit blocks of a macroblock to be currently processed from an external memory.

도 13은 디블록 필터링 과정에서 단위 블록들에 적용하는 필터링의 종류 및 순서를 나타내는 도면이다. FIG. 13 is a diagram illustrating the type and order of filtering applied to unit blocks in a deblocking filtering process.

도 14는 외부메모리에 디블록 필터링이 완료된 단위 블록들을 백업하는 것을 개념적으로 나타낸 도면이다.FIG. 14 is a diagram conceptually illustrating backing up unit blocks having completed deblocking filtering to an external memory. FIG.

도 15는 내부메모리에 저장된 단위블록들 중 디블록 필터링이 완료되지 않은 단위 블록들을 GOB버퍼에 저장하는 것을 개념적으로 나타낸 도면이다. FIG. 15 is a diagram conceptually illustrating storing, in a GOB buffer, unit blocks in which deblocking filtering is not completed among unit blocks stored in an internal memory.

도 16은 상술한 디블록 필터링 장치를 포함하는 디코딩 장치를 나타내는 도면이다.16 is a diagram illustrating a decoding apparatus including the above-described deblocking filtering apparatus.

Claims (18)

이전 매크로블록들에 포함되는 제 1 이전 단위 블록들 및 제 2 이전 단위 블록들을 준비하는 단계;Preparing first and second previous unit blocks included in previous macroblocks; 디블록 필터링을 수행할 처리 매크로블록에 포함되는 처리 단위 블록들을 준비하는 단계;Preparing processing unit blocks included in a processing macroblock to perform deblocking filtering; 상기 제 1 이전 단위 블록들, 상기 제 2 이전 단위 블록들, 상기 제 1 이전 단위 블록들과 인접한 처리 단위 블록들의 정보를 이용하여 상기 제 1 이전 단위 블록들을 디블록 필터링하는 단계; 및Deblocking the first previous unit blocks using information of the first previous unit blocks, the second previous unit blocks, and processing unit blocks adjacent to the first previous unit blocks; And 상기 디블록 필터링된 제 1 이전 단위 블록들, 상기 제 2 이전 단위 블록들 및 상기 처리 단위 블록의 정보를 이용하여 적어도 하나의 상기 처리 단위 블록을 디블록 필터링하는 단계를 포함하되, Deblocking the at least one processing unit block using information of the deblocking filtered first previous unit blocks, the second previous unit blocks, and the processing unit block; 상기 제 1 이전 단위 블록들은 상기 처리 매크로블록의 상측에 인접한(contiguous) 단위 블록들이고, The first previous unit blocks are contiguous unit blocks above the processing macroblock, 상기 제 2 이전 단위 블록들은 상기 처리 매크로블록의 좌측에 인접한(contiguous) 적어도 하나의 단위 블록들 및 상기 처리 매크로블록의 좌상측에 인접한 단위 블록으로 구성되는 것을 특징으로 하는 디블록 필터링 방법.And the second previous unit blocks comprise at least one unit block contiguous to the left of the processing macroblock and a unit block adjacent to the upper left side of the processing macroblock. 제 1 항에 있어서, 상기 제 1 이전 단위 블록들 및 제 2 이전 단위 블록들을 준비하는 단계는,The method of claim 1, wherein the preparing of the first previous unit blocks and the second previous unit blocks comprises: 특정 버퍼에 저장되어 있는 상기 처리 매크로블록의 상측에 인접한 단위 블록들을 내부메모리로 로딩하는 단계; 및Loading unit blocks adjacent to the upper side of the processing macroblock stored in a specific buffer into an internal memory; And 상기 내부메모리에 저장되어 있던 이전 매크로블록의 처리 단위 블록 및 이전 매크로블록에 대한 제1 이전 단위 블록들 중 일부에 대해 상기 내부메모리 내에서 저장 위치를 변경하는 단계를 포함하는 것을 특징으로 하는 디블록 필터링 방법. And changing a storage location in the internal memory for some of the processing unit block of the previous macroblock stored in the internal memory and some of the first previous unit blocks for the previous macroblock. Filtering method. 제 1 항에 있어서, 상기 제 1 이전 단위 블록들을 디블록 필터링하는 단계는,The method of claim 1, wherein the deblocking filtering of the first previous unit blocks comprises: 상기 제 1 이전 단위 블록들에 대해 수평 방향에 대한 디블록 필터링을 수행하는 단계; 및 Performing deblocking filtering in a horizontal direction on the first previous unit blocks; And 상기 제 1 이전 단위 블록들에 대해 수직 방향에 대한 디블록 필터링을 수행하는 단계를 포함하는 것을 특징으로 하는 디블록 필터링 방법. And performing deblocking filtering in a vertical direction with respect to the first previous unit blocks. 제 3 항에 있어서, 상기 수직 방향에 대한 디블록 필터링의 수행하는 단계는,The method of claim 3, wherein performing deblocking filtering on the vertical direction comprises: 상기 제 1 이전 단위 블록들 중 가장 좌측에 있는 단위 블록부터 우측에 있는 단위 블록의 순서대로 디블록 필터링을 수행하는 단계를 포함하는 것을 특징으로 하는 디블록 필터링 방법. And performing deblock filtering in the order of the leftmost unit block from the first previous unit blocks in the order of the rightmost unit block. 제 1 항에 있어서, 상기 제 1 이전 단위 블록들을 디블록 필터링 하는 단계는, The method of claim 1, wherein the deblocking filtering of the first previous unit blocks comprises: 상기 제 1 이전 단위 블록들에 대해 HDW(Horizontal-Down-Weak filtering)를 수행하는 단계; 및 Performing horizontal-down-weak filtering (HDW) on the first previous unit blocks; And 상기 제 1 이전 단위 블록들에 대해 VLW(Vertical-Left-Weak filtering)를 수행하는 단계를 포함하는 것을 특징으로 하는 디블록 필터링 방법.And performing vertical-left-weak filtering (VLW) on the first previous unit blocks. 제 1 항에 있어서, 상기 적어도 하나의 처리 단위 블록을 디블록 필터링하는 단계는, The method of claim 1, wherein the deblocking filtering of the at least one processing unit block comprises: 적어도 하나의 처리 단위 블록에 대해 HDW(Horizontal-Down-Weak filtering)를 수행하는 단계; 및 Performing horizontal-down-weak filtering (HDW) on at least one processing unit block; And 상기 적어도 하나의 처리 단위 블록에 대해 VLW(Vertical-Left-Weak filtering)를 수행하는 단계를 포함하는 것을 특징으로 하는 디블록 필터링 방법.And performing vertical-left-weak filtering (VLW) on the at least one processing unit block. 제 5 항 또는 제 6 항에 있어서, 상기 제1 이전 단위 블록들 또는 상기 처리 단위 블록의 경계가 매크로블록의 경계에 해당하는 경우, The method of claim 5 or 6, wherein when the boundary of the first previous unit blocks or the processing unit block corresponds to the boundary of the macroblock, 상기 제1 이전 단위 블록들 또는 상기 처리 단위 블록에 대해 HUS(Horizontal-Up-Strong filtering)를 수행하는 단계; 및 Performing horizontal-up-strong filtering (HUS) on the first previous unit blocks or the processing unit block; And 상기 제1 이전 단위 블록들 또는 상기 처리 단위 블록에 대해 VLS(Vertical-Left-Strong filtering)를 수행하는 단계를 더 포함하는 것을 특징으로 하는 디블록 필터링 방법. And performing vertical-left-strong filtering (VLS) on the first previous unit blocks or the processing unit block. 제 1 항에 있어서, 상기 적어도 하나의 처리 단위 블록을 디블록 필터링하는 단계는, The method of claim 1, wherein the deblocking filtering of the at least one processing unit block comprises: 상기 처리 매크로블록의 마지막 행에 속하는 처리 단위 블록들을 제외한 처리 단위 블록들에 대해 디블록 필터링하는 단계를 포함하는 것을 특징으로 하는 디블록 필터링 방법. And deblocking filtering the processing unit blocks except for the processing unit blocks belonging to the last row of the processing macroblock. 제 8 항에 있어서, 상기 마지막 행에 속하는 처리 단위 블록들은 상기 처리 매크로블록의 하측에 인접한 다음 매크로블록의 디블록 필터링 시에 처리하기 위해 특정 버퍼에 저장하는 단계를 더 포함하는 것을 특징으로 하는 디블록 필터링 방법. The method of claim 8, wherein the processing unit blocks belonging to the last row further comprises storing in a specific buffer for processing during the deblocking filtering of the next macroblock adjacent to the processing macroblock. Block filtering method. 디블록 필터링을 수행할 처리 매크로블록의 처리 단위 블록들, 제 1 이전 단위 블록들 및 제 2 이전 단위 블록들을 저장하는 내부 메모리; 및An internal memory configured to store processing unit blocks, first previous unit blocks, and second previous unit blocks of a processing macroblock to perform deblocking filtering; And 상기 내부메모리에 저장된 단위 블록들을 이용하여 디블록 필터링을 수행하되, 상기 제 1 이전 단위 블록들, 상기 제 2 이전 단위 블록들, 상기 제 1 이전 단위 블록들과 인접한 처리 단위 블록들의 정보를 이용하여 상기 제 1 이전 단위 블록들을 디블록 필터링하고, Deblock filtering is performed using unit blocks stored in the internal memory, using information about the first previous unit blocks, the second previous unit blocks, and processing unit blocks adjacent to the first previous unit blocks. Deblocking the first previous unit blocks, 상기 디블록 필터링된 제 1 이전 단위 블록들, 상기 제 2 이전 단위 블록들 및 상기 처리 단위 블록의 정보를 이용하여 적어도 하나의 상기 처리 단위 블록을 디블록 필터링하는 디코딩 프로세서를 포함하되, And a decoding processor configured to deblock at least one of the processing unit blocks by using the information of the deblocking filtered first previous unit blocks, the second previous unit blocks, and the processing unit block. 상기 제 1 이전 단위 블록들은 상기 처리 매크로블록의 상측에 인접한(contiguous) 단위 블록들이고, The first previous unit blocks are contiguous unit blocks above the processing macroblock, 상기 제 2 이전 단위 블록들은 상기 처리 매크로블록의 좌측에 인접한(contiguous) 적어도 하나의 단위 블록들 및 상기 처리 매크로블록의 좌상측에 인접한 단위 블록으로 구성되는 것을 특징으로 하는 디블록 필터링 장치. And the second previous unit blocks comprise at least one unit block contiguous to the left of the processing macroblock and a unit block adjacent to the upper left side of the processing macroblock. 제 10 항에 있어서, 상기 디코딩 프로세서는 특정 버퍼에 저장되어 있는 상기 처리 매크로블록의 상측에 인접한 단위 블록들을 내부메모리로 로딩하고, 상기 내부메모리에 저장되어 있던 이전 매크로블록의 처리 단위 블록 및 이전 매크로블록에 대한 제1 이전 단위 블록들 중 일부에 대해 상기 내부메모리 내에서 저장 위치를 변경한 후 디블록 필터링을 수행하는 것을 특징으로 하는 디블록 필터링 장치. The processing unit block of claim 10, wherein the decoding processor loads unit blocks adjacent to the upper side of the processing macroblock stored in a specific buffer into an internal memory, and processes a processing unit block and a previous macro of a previous macroblock stored in the internal memory. The deblock filtering apparatus of claim 1, wherein the deblocking filtering is performed after changing a storage location of the first previous unit blocks for the block in the internal memory. 제 10 항에 있어서, 상기 디코딩 프로세서는 상기 처리 매크로블록의 마지막 행에 속하는 처리 단위 블록들을 제외한 처리 단위 블록들에 대해 디블록 필터링한 후, 상기 마지막 행에 속하는 처리 단위 블록들을 상기 처리 매크로블록의 하측에 인접한 다음 매크로블록의 디블록 필터링 시에 처리하기 위해 특정 버퍼에 저장하는 것을 특징으로 하는 디블록 필터링 장치. The method of claim 10, wherein the decoding processor deblocks the processing unit blocks except for the processing unit blocks belonging to the last row of the processing macroblock, and then processes the processing unit blocks belonging to the last row of the processing macroblock. A deblocking filtering device, characterized in that it is stored in a specific buffer for processing during the deblocking filtering of the next macroblock adjacent to the lower side. 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020090018630A 2009-03-04 2009-03-04 Deblock filtering method and apparatus KR101063423B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090018630A KR101063423B1 (en) 2009-03-04 2009-03-04 Deblock filtering method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090018630A KR101063423B1 (en) 2009-03-04 2009-03-04 Deblock filtering method and apparatus

Publications (2)

Publication Number Publication Date
KR20100100002A KR20100100002A (en) 2010-09-15
KR101063423B1 true KR101063423B1 (en) 2011-09-07

Family

ID=43006122

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090018630A KR101063423B1 (en) 2009-03-04 2009-03-04 Deblock filtering method and apparatus

Country Status (1)

Country Link
KR (1) KR101063423B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100753504B1 (en) 2005-12-20 2007-08-31 엘지전자 주식회사 In-loop Deblocking Filter System and method for filterring data using the same
KR100771879B1 (en) * 2006-08-17 2007-11-01 삼성전자주식회사 Method of deblocking filtering decreasing inner memory storage and a video processing device using the method
KR100856551B1 (en) 2007-05-31 2008-09-04 한국과학기술원 Deblock filter and deblock filtering method in h.264/avc

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100753504B1 (en) 2005-12-20 2007-08-31 엘지전자 주식회사 In-loop Deblocking Filter System and method for filterring data using the same
KR100771879B1 (en) * 2006-08-17 2007-11-01 삼성전자주식회사 Method of deblocking filtering decreasing inner memory storage and a video processing device using the method
KR100856551B1 (en) 2007-05-31 2008-09-04 한국과학기술원 Deblock filter and deblock filtering method in h.264/avc

Also Published As

Publication number Publication date
KR20100100002A (en) 2010-09-15

Similar Documents

Publication Publication Date Title
CN1812576B (en) Deblocking filters for performing horizontal and vertical filtering of video data simultaneously and methods of operating the same
JP6281851B2 (en) Image decoding apparatus, image encoding apparatus, image decoding method, image encoding method, program, and integrated circuit
TWI382764B (en) Scratch pad for storing intermediate loop filter data
KR100624426B1 (en) Pipeline decoding apparatus and method, and computer-readable recording media for storing computer program for controlling the apparatus
US20060115002A1 (en) Pipelined deblocking filter
EP2061250B1 (en) Deblocking filter
US9344717B2 (en) Method and apparatus for sample adaptive offset in a video decoder
EP1613095A2 (en) Deblocking filter apparatus and methods using sub-macro-block-shifting register arrays
JP2006157925A (en) Pipeline deblocking filter
CN104521234B (en) Merge the method for processing video frequency and device for going block processes and sampling adaptive migration processing
JP2007258882A (en) Image decoder
KR101063423B1 (en) Deblock filtering method and apparatus
KR101331093B1 (en) Method and Apparatus for Interleaving Reference Pixel within a Single Bank of Video Memory, Video Codec System Including the Same
CN107667529B (en) Method, apparatus, and computer-readable recording medium for efficiently embedded compression of data
KR101004825B1 (en) Pipielined deblocking filter using two filters simultaneously
KR100816461B1 (en) Real-time deblocking filter and Method using the same
CN117651145A (en) Video decoding device, operation method thereof and video system

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151207

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160701

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170703

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee