KR20100046289A - Video encoding/decoding apparatus, adaptive deblocking filter and deblocing filtering method, and recording medium therefor - Google Patents

Video encoding/decoding apparatus, adaptive deblocking filter and deblocing filtering method, and recording medium therefor Download PDF

Info

Publication number
KR20100046289A
KR20100046289A KR1020080105062A KR20080105062A KR20100046289A KR 20100046289 A KR20100046289 A KR 20100046289A KR 1020080105062 A KR1020080105062 A KR 1020080105062A KR 20080105062 A KR20080105062 A KR 20080105062A KR 20100046289 A KR20100046289 A KR 20100046289A
Authority
KR
South Korea
Prior art keywords
filtering
pixel
degrees
boundary
pixels
Prior art date
Application number
KR1020080105062A
Other languages
Korean (ko)
Other versions
KR101597253B1 (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 KR1020080105062A priority Critical patent/KR101597253B1/en
Priority to US13/126,144 priority patent/US9596485B2/en
Priority to PCT/KR2009/006127 priority patent/WO2010050699A2/en
Publication of KR20100046289A publication Critical patent/KR20100046289A/en
Application granted granted Critical
Publication of KR101597253B1 publication Critical patent/KR101597253B1/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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

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

Abstract

PURPOSE: A video encoding/decoding apparatus, an adaptive de-blocking filter and a de-blocking filtering method, and a recording medium therefor are provided to remove block distortion efficiently by applying a de-blocking filter of pixel unit to plural directions. CONSTITUTION: A boundary strength decision unit(191) determines the strength of a boundary between current sub blocks. A direction selection unit(193) selects plural preset directions one by one. A pixel selection unit(195) selects a pixel to be filtered. According to pixel relation between selected pixels, a filtering decision unit(197) decides the filtering for the selected direction. A filtering unit(199) performs the filtering operation for the selected pixels of the selected direction.

Description

동영상 부호화/복호화 장치, 이를 위한 적응적 디블록킹 필터링 장치와 필터링 방법, 및 기록 매체{Video encoding/decoding apparatus, Adaptive Deblocking filter and deblocing filtering method, and Recording Medium therefor}Video encoding / decoding apparatus, adaptive deblocking filtering and deblocing filtering method, and recording medium therefor}

본 발명은 동영상 부호화/복호화 장치에 관한 것으로서, 특히 블록 기반의 이산 여현 변환과 양자화를 이용하여 부호화하는 장치에서 발생하는 블록킹 효과(blocking Artifact)를 효과적으로 제거하기 위한, 동영상 부호화/복호화 장치, 이를 위한 적응적 디블록킹 필터링 장치와 필터링 방법, 및 기록 매체 디블록킹 필터 및 필터링 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a video encoding / decoding apparatus, and more particularly, to a video encoding / decoding apparatus for effectively removing a blocking artifact occurring in an apparatus for encoding using block-based discrete cosine transform and quantization. Apparatus and method for adaptive deblocking filtering and recording medium deblocking filter and filtering method.

일반적으로, 대부분의 상용 비디오 압축 방식 및 그 장치(H.263, H.264, MPEG-4, H.264/AVC)에서는, 영상의 공간 중복성을 줄이기 위해 블록 기반 이산 여현 변환(Discrete cosine transform: DCT)과 양자화(Quantization) 기술을 사용한다. 이 때, 서로 겹쳐지지 않는 블록 단위의 변환(Transform)은 주변 블록 또는 화소 간의 상관 관계가 전혀 고려되지 않은 채 독립적으로 이산 여현 변환과 양자화 과정이 수행되어 데이터 손실이 발생하고, 특히 양자화 값을 크게 갖는 저 비트율의 비디오에서는 블록 간의 경계 면에 화소 값의 구조화된 불연속성인 블록화 현상 뚜렷하게 나타나는데, 이를 블록킹 아티팩트(Blocking Artifact)라 한다. 블록킹 아티팩트는 비디오 화면의 화질을 크게 떨어뜨릴 뿐만 아니라, 블록 왜곡이 생긴 채로 프레임 메모리에 저장되고, 움직임 보상 과정에 블록 왜곡이 포함된 영상이 참조되어 화질열화가 그대로 전파되어 압축 성능을 크게 떨어뜨리는 문제점이 있다.In general, in most commercial video compression schemes and devices (H.263, H.264, MPEG-4, H.264 / AVC), block-based discrete cosine transforms are used to reduce spatial redundancy of images. DCT) and quantization techniques. In this case, the transforms of block units that do not overlap each other are independently subjected to discrete cosine transform and quantization without any correlation between neighboring blocks or pixels, thereby causing data loss, and in particular, greatly increasing the quantization value. In low bit-rate video, the blocking phenomenon, which is a structured discontinuity of pixel values, appears clearly at the interface between blocks, which is called blocking artifact. Blocking artifacts not only significantly reduce the picture quality of the video screen, but are also stored in the frame memory with block distortion, and the image with block distortion is referenced in the motion compensation process, so that image quality deterioration is propagated, which greatly reduces the compression performance. There is a problem.

이 때문에 부호화기에서 참조 프레임 메모리에 복호된 영상을 저장하기 전에 블록킹 아티팩트를 감소시키고, 또한 복화화기에서도 화질 개선을 위해서, 블록간의 경계 오차를 부드럽게 해주는 저 대역 필터를 사용하여 이러한 문제를 해결할 수 있었는데 이러한 기법을 디블로킹 필터라고 한다. For this reason, this problem can be solved by using a low-band filter that reduces the blocking artifacts before the decoder stores the decoded image in the reference frame memory and also improves the image quality in the decoder. The technique is called deblocking filter.

그러나 블록 경계 면에서 영상 내에 존재하는 에지나 화면 내 오브젝트의 경계가 존재할 경우, 여기에 디블록킹 필터를 적용하게 되면 원래 영상의 성분인 에지 부분이 훼손하는 경우가 발생하여 화질 열화의 원인이 된다.However, if there is an edge present in the image or an object boundary in the screen at the block boundary surface, applying the deblocking filter to this may cause the edge portion of the original image to be damaged, thereby causing deterioration of image quality.

그래서 H.264/AVC 비디오 코덱에서의 디블록킹 필터는 DCT와 양자화를 수행하는 블록 단위인 4x4 화소를 갖는 블록의 경계마다 적응적으로 필터링을 수행한다. 좀더 자세히 말하면, 블록의 경계면이 실제 영상의 에지나 오브젝트의 경계라고 판단되면 필터링을 취하지 않고, 경계면이 블로킹 아티팩트로 인한 왜곡이라고 판단되면 필터링을 취함으로써 상기 문제를 해결하였다.Therefore, the deblocking filter in the H.264 / AVC video codec adaptively performs filtering for each boundary of a block having 4x4 pixels, which is a block unit performing quantization with DCT. In more detail, if the boundary of the block is determined to be the edge of the real image or the boundary of the object, the filtering is not performed. If the boundary is determined to be distortion due to blocking artifacts, the problem is solved.

그러나 H.264/AVC의 디블록킹 필터는 수직과 수평 방향으로만 에지 존재 여부를 판단하기 때문에 대각선 방향으로 에지나 오브젝트의 경계가 위치하게 되면, 블록간의 경계 부분의 대각선 방향 화소에 대해서 불연속성이 발생하여 여전히 블 록킹 아티팩트가 생길 수 있는 문제점이 있다.However, since the H.264 / AVC deblocking filter determines the existence of an edge only in the vertical and horizontal directions, when a boundary of an edge or an object is placed in a diagonal direction, discontinuity occurs in diagonal pixels of the boundary between blocks. There is still a problem that blocking artifacts can occur.

전술한 문제점을 해결하기 위해 본 발명은, 블록간의 경계에서 수직과 수평 방향뿐만 아니라 그 외의 다수 방향에 대하여 에지 방향을 화소 단위로 판별하고, 그 방향으로 디블록킹 필터링을 수행함으로써 블록킹 아티팩트를 제거하여 화질을 향상시키도록 하는, 동영상 부호화/복호화 장치, 이를 위한 적응적 디블록킹 필터링 장치와 필터링 방법, 및 기록 매체를 제공하는 것을 목적으로 한다.In order to solve the above problems, the present invention, by determining the edge direction in the pixel unit in the vertical and horizontal direction as well as a number of other directions at the boundary between blocks, and remove the blocking artifacts by performing deblocking filtering in that direction An object of the present invention is to provide a video encoding / decoding apparatus, an adaptive deblocking filtering apparatus and a filtering method, and a recording medium for improving image quality.

전술한 목적을 달성하기 위하여 본 발명의 실시예의 일 측면에 따르면, 현재 블록의 서브 블록간의 경계의 세기를 결정하는 경계 세기 결정부; 상기 경계를 기준으로 기 설정된 복수의 방향 중 하나씩 순차적으로 선택하는 방향 선택부; 상기 선택된 방향에 근거하여 필터링할 화소들을 선택하는 화소 선택부; 상기 선택된 화소들간의 화소값의 관계에 따라 상기 선택된 방향에 대한 필터링 여부를 결정하는 필터링 결정부; 상기 결정된 필터링 여부에 따라 상기 선택된 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 필터링부를 포함하는 적응적 디블록킹 필터링 장치가 제공된다.According to an aspect of an embodiment of the present invention to achieve the above object, a boundary strength determination unit for determining the strength of the boundary between the sub-blocks of the current block; A direction selector which sequentially selects one of a plurality of preset directions based on the boundary; A pixel selector which selects pixels to filter based on the selected direction; A filtering determiner configured to determine whether to filter the selected direction according to a relationship between pixel values between the selected pixels; An adaptive deblocking filtering device including a filtering unit which performs filtering on the selected pixels in the selected direction according to the determined filtering is provided.

전술한 목적을 달성하기 위하여 본 발명의 실시예의 다른 측면에 따르면, 현재 블록의 서브 블록간의 경계의 세기를 결정하는 경계 세기 결정 단계; 상기 경계를 기준으로 기 설정된 복수의 방향 중 하나씩 순차적으로 선택하는 방향 선택 단 계; 상기 선택된 방향에 근거하여 필터링할 화소들을 선택하는 화소 선택 단계; 상기 선택된 화소들간의 화소값의 관계에 따라 상기 선택된 방향에 대한 필터링 여부를 결정하는 필터링 결정 단계; 상기 결정된 필터링 여부에 따라 상기 선택된 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 필터링 단계를 포함하는 적응적 디블록킹 필터링 방법이 제공된다.According to another aspect of an embodiment of the present invention to achieve the above object, a boundary strength determination step of determining the strength of the boundary between sub-blocks of the current block; A direction selection step of sequentially selecting one of a plurality of preset directions based on the boundary; Selecting a pixel to filter based on the selected direction; A filtering determination step of determining whether to filter in the selected direction according to the relationship of pixel values between the selected pixels; An adaptive deblocking filtering method including a filtering step of performing filtering on the selected pixels in the selected direction according to the determined filtering is provided.

상기 필터링 결정부 또는 상기 필터링 결정 단계는, 상기 선택된 화소들간의 화소값의 관계가, 상기 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 상기 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 상기 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 상기 선택된 방향을 필터링 방향으로 결정할 수 있다.In the filtering determining unit or the filtering determining step, the relationship between the pixel values between the selected pixels is an absolute value of the pixel value difference between the first pixels facing the boundary, and the two sides on the basis of the boundary are determined. If the absolute value of the pixel value difference between the first pixel and the first pixel, and the absolute value of the pixel value difference between the second pixel and the first pixel on the other side based on the boundary, respectively satisfy the condition less than the preset thresholds, The selected direction may be determined as the filtering direction.

상기 필터링부 또는 상기 필터링 단계는, 상기 결정된 필터링 방향이 다수일 경우, 다수의 필터링 방향 중 하나 이상 선택하여 필터링을 수행할 수 있다.The filtering unit or the filtering step may perform filtering by selecting one or more of the plurality of filtering directions when the determined filtering directions are multiple.

상기 기 설정된 복수의 방향은, 일 예로 45도, 90도, 및 135도를 포함하거나, 다른 예로 45도, 56.25도, 67.5도, 78.75도, 90도, 101.25도, 112.5도, 123.75도 및 135도를 포함할 수 있다.The preset plurality of directions may include, for example, 45 degrees, 90 degrees, and 135 degrees, or in another example, 45 degrees, 56.25 degrees, 67.5 degrees, 78.75 degrees, 90 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees, and 135 degrees. May comprise a diagram.

전술한 목적을 달성하기 위하여 본 발명의 실시예의 또 다른 측면에 따르면, 영상의 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부; 상기 잔차 블록을 주파수 영역으로 변환하는 변환부; 상기 변환된 잔차 블록을 양자화하는 양자화부; 상 기 양자화된 잔차 블록을 부호화하는 부호화부; 상기 잔차 블록을 역 양자화하는 역양자화부; 상기 역 양자화된 잔차 블록을 시간축상의 화소 신호를 갖는 잔차 블록으로 역변환하는 역변환부; 상기 역변환된 잔차 블록에 상기 예측 블록을 가산하여 현재 블록을 복원하는 가산부; 및 상기 복원된 현재 블록을 디블로킹 필터링하되, 상기 복원된 현재 블록의 경계를 기준으로 기 설정된 복수의 방향별로 필터링할 화소들을 선택하고, 그 선택된 화소들간의 화소값의 관계에 따라 해당 방향에 대한 필터링 여부를 결정하고, 그 결정된 필터링 여부에 따라 상기 해당 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 디블로킹 필터부를 포함하는 동영상 부호화 장치가 제공된다.According to another aspect of an embodiment of the present invention to achieve the above object, a prediction unit for predicting the current block of the image to generate a prediction block; A subtraction unit for generating a residual block by subtracting the prediction block from the current block; A transformer for converting the residual block into a frequency domain; A quantizer for quantizing the transformed residual block; An encoder which encodes the quantized residual block; An inverse quantizer for inversely quantizing the residual block; An inverse transform unit for inversely transforming the inverse quantized residual block into a residual block having a pixel signal on a time axis; An adder configured to add the prediction block to the inverse transformed residual block to restore a current block; And deblocking and filtering the reconstructed current block, selecting pixels to be filtered in a plurality of preset directions based on the boundary of the reconstructed current block, and reconstructing the corresponding block according to the relationship of pixel values between the selected pixels. A video encoding apparatus including a deblocking filter unit configured to determine whether to filter and to perform filtering on the selected pixels in the corresponding direction according to the determined filtering.

전술한 목적을 달성하기 위하여 본 발명의 실시예의 또 다른 측면에 따르면, 비트스트림을 복호화하여 잔차 블록을 추출하는 복호화부; 상기 잔차 블록을 역 양자화하는 역양자화부; 상기 역 양자화된 잔차 블록을 역 변환하는 역변환부; 현재 블록을 예측하여 예측 블록을 생성하는 예측부; 상기 역 변환된 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산부; 및 상기 가산부 의해 복원된 상기 현재 블록을 디블로킹 필터링하되, 상기 현재 블록의 경계를 기준으로 기 설정된 복수의 방향별로 필터링할 화소들을 선택하고, 그 선택된 화소들간의 화소값의 관계에 따라 해당 방향에 대한 필터링 여부를 결정하고, 그 결정된 필터링 여부에 따라 상기 해당 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 디블로킹 필터부를 포함하는 동영상 복호화 장치가 제공된다.According to another aspect of an embodiment of the present invention to achieve the above object, a decoding unit for decoding the bitstream to extract the residual block; An inverse quantizer for inversely quantizing the residual block; An inverse transform unit for inversely transforming the inverse quantized residual block; A prediction unit for predicting a current block to generate a prediction block; An adder configured to add the inverse transformed residual block and the prediction block to restore the current block; And deblocking and filtering the current block restored by the adder, selecting pixels to be filtered according to a plurality of preset directions based on the boundary of the current block, and selecting corresponding pixels according to the relationship between pixel values among the selected pixels. A video decoding apparatus including a deblocking filter unit configured to determine whether to filter for and to filter the selected pixels in the corresponding direction according to the determined filtering.

상기 동영상 부호화/복호화 장치의 상기 디블로킹 필터부는, 상기 선택된 화 소들간의 화소값의 관계가, 상기 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 상기 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 상기 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 상기 해당 방향을 필터링 방향으로 결정할 수 있다.The deblocking filter unit of the video encoding / decoding apparatus may have a relationship between pixel values between the selected pixels, an absolute value of pixel value differences between first pixels facing the boundary, and one side based on the boundary. The absolute value of the pixel value difference between the second pixel and the first pixel of, and the absolute value of the pixel value difference between the second pixel and the first pixel on the other side with respect to the boundary satisfy each of the preset thresholds. In this case, the corresponding direction may be determined as the filtering direction.

전술한 목적을 달성하기 위하여 본 발명의 실시예의 또 다른 측면에 따르면, 현재 블록의 서브 블록간의 경계의 세기를 결정하는 경계 세기 결정 기능; 상기 경계를 기준으로 기 설정된 복수의 방향 중 하나씩 순차적으로 선택하는 방향 선택 기능; 상기 선택된 방향에 근거하여 필터링할 화소들을 선택하는 화소 선택 기능; 상기 선택된 화소들간의 화소값의 관계에 따라 상기 선택된 방향에 대한 필터링 여부를 결정하는 필터링 결정 기능; 상기 결정된 필터링 여부에 따라 상기 선택된 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 필터링 기능을 포함하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체가 제공된다.According to another aspect of an embodiment of the present invention to achieve the above object, a boundary strength determination function for determining the strength of the boundary between sub-blocks of the current block; A direction selection function for sequentially selecting one of a plurality of preset directions based on the boundary; A pixel selection function for selecting pixels to be filtered based on the selected direction; A filtering determination function for determining whether to filter in the selected direction according to a relationship of pixel values between the selected pixels; A computer readable recording medium having recorded thereon a program including a filtering function for performing filtering on the selected pixels in the selected direction according to the determined filtering is provided.

상기 필터링 결정 기능은 상기 선택된 화소들간의 화소값의 관계가, 상기 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 상기 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 상기 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 상기 선택된 방향을 필터링 방향으로 결정할 수 있다.The filtering determination function may include a relationship between pixel values between the selected pixels, an absolute value of pixel value differences between first pixels facing the boundary, and a second pixel and a first pixel on one side based on the boundary. If the absolute value of the pixel value difference between the absolute value and the absolute value of the pixel value difference between the second pixel and the first pixel on the basis of the boundary are respectively smaller than the preset thresholds, the selected direction is filtered. Can be determined.

본 발명의 실시예에 의하면, 수직 수평 방향 뿐만 아니라 그 밖의 다수의 방향에 대해서도 화소 단위로 디블록킹 필터를 적용하여, 다수의 사선 방향에 대한 에지로 인하여 생기는 사선 방향의 불연속 성에 의한 블록 왜곡 현상을 효과적으로 제거하는 효과가 발생한다.According to an exemplary embodiment of the present invention, the block blocking phenomenon due to the discontinuity in the diagonal direction caused by the edges of the plurality of diagonal directions is applied by applying the deblocking filter in units of pixels not only in the vertical horizontal direction but also in many other directions. Effective removal occurs.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.Hereinafter, some embodiments of the present invention will be described in detail through exemplary drawings. In adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are assigned to the same components as much as possible even though they are shown in different drawings. In addition, in describing the present invention, when it is determined that the detailed description of the related well-known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, in describing the component of this invention, terms, such as 1st, 2nd, A, B, (a), (b), can be used. These terms are only for distinguishing the components from other components, and the nature, order or order of the components are not limited by the terms. If a component is described as being "connected", "coupled" or "connected" to another component, that component may be directly connected to or connected to that other component, but there may be another configuration between each component. It is to be understood that the elements may be "connected", "coupled" or "connected".

동영상 화면은 1초 동안에 30장의 프레임으로 구성되므로 한 프레임과 이웃한 프레임 사이에는 그 차이가 작기 때문에, 인간의 눈으로 구분하지 못한다. 이 때문에, 1초 동안에 30장의 프레임을 뿌리면 인간의 눈은 프레임이 연속적인 것으 로 인식한다. Since the video screen is composed of 30 frames in one second, the difference is small between one frame and neighboring frames, and thus cannot be distinguished by the human eye. Because of this, if 30 frames are sprayed in one second, the human eye perceives the frames as continuous.

이와 같이, 이전 프레임과 현재 프레임이 비슷하다면, 이전 프레임을 구성하고 있는 이미 알고 있는 화소값으로부터 다음 프레임의 화소값을 예측할 수 있다. 이를 화면간 예측(inter-prediction)이라 한다. As such, when the previous frame is similar to the current frame, the pixel value of the next frame can be predicted from the known pixel values constituting the previous frame. This is called inter-prediction.

이러한 동영상 데이터의 부호화 및 복호화는 움직임 예측(motion prediction) 기술을 기반으로 이루어진다. 움직임 예측은 시간 축을 기준으로 과거 프레임을 참조하거나 과거 프레임과 미래 프레임을 모두 참조하는 방식으로 수행된다. 현재 프레임을 부호화하거나 복호화하는데 참조되는 프레임을 참조 프레임이라고 한다. 그리고, 블록 기반 동영상 부호화에서 동영상을 구성하는 하나의 정지영상(프레임)은 매크로블록과 매크로블록을 구성하는 서브블록으로 나누어져, 블록단위로 움직임이 예측되고 부호화가 수행된다.The encoding and decoding of such video data is performed based on a motion prediction technique. The motion prediction is performed by referring to past frames or referring to both past and future frames based on the time axis. The frame referred to to encode or decode the current frame is called a reference frame. In block-based video encoding, one still image (frame) constituting a video is divided into macroblocks and subblocks constituting the macroblock, and motion is predicted in units of blocks and encoding is performed.

또한 동일한 프레임 내에서 화소신호의 상관관계를 사용해 다음 화소를 예측하고 그 예측오차를 부호화할 수도 있다. 이를 화면 내 예측(intra-prediction)이라 한다.In addition, the correlation of the pixel signal may be used to predict the next pixel and to encode the prediction error in the same frame. This is called intra-prediction.

도 1은 본 발명의 일 실시예에 따른 동영상 부호화 장치의 블록 구성도이다.1 is a block diagram of a video encoding apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 동영상 부호화 장치(100)는 예측부(110), 감산부(120), 변환부(130), 양자화부(140), 부호화부(150), 역 양자화부(160), 역 변환부(170), 가산부(180) 및 디블로킹 필터부(190)를 포함하여 구성될 수 있다.The video encoding apparatus 100 according to an embodiment of the present invention includes a predictor 110, a subtractor 120, a transformer 130, a quantizer 140, an encoder 150, and an inverse quantizer 160. ), An inverse transform unit 170, an adder 180, and a deblocking filter unit 190.

이러한 동영상 부호화 장치(100)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티 미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The video encoding apparatus 100 may be a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP), or a PlayStation Portable (PSP). And a communication device such as a communication modem for communicating with various devices or a wired / wireless communication network, a memory for storing various programs and data for encoding an image, and a program. It means a variety of devices having a microprocessor, etc. for execution and operation and control.

예측부(110)는 위에서 설명한 바와 같이 움직임 예측을 기반으로 하는 화면간 예측이나 동일한 프레임 내에서 화소신호의 상관관계를 사용해 다음 화소를 예측하는 화면 내 예측 중 어느 하나 또는 둘의 조합을 이용하여 현재 블록(또는 매크로블록)을 예측할 수 있다.As described above, the prediction unit 110 may use the current prediction using any one or a combination of intra prediction based on motion prediction or intra prediction that predicts the next pixel using the correlation of pixel signals within the same frame. A block (or macroblock) can be predicted.

예를 들어, 예측부(110)는 움직임 추정부(미도시)와 움직임 보상부(미도시)로 나누어 구성될 수 있다. 움직임 추정부는 현재 프레임의 매크로 블록의 움직임 예측치를 참조 프레임에서 찾아 그 움직임의 차이를 움직임 벡터로써 출력한다. 즉, 찾고자 하는 매크로 블록을 참조 프레임의 소정의 탐색영역 내에서 탐색하여, 가장 유사한 매크로 블록을 찾아 그 이동 정도를 움직임 벡터로써 출력한다. 움직임 보상부는 구해진 움직임 벡터에 해당하는 예측 매크로 블록을 참조 프레임으로부터 얻는다.For example, the predictor 110 may be divided into a motion estimator (not shown) and a motion compensator (not shown). The motion estimator finds the motion prediction value of the macroblock of the current frame in the reference frame and outputs the difference of the motion as a motion vector. That is, the macroblock to be searched is searched within a predetermined search area of the reference frame to find the most similar macroblock and the degree of movement thereof is output as a motion vector. The motion compensation unit obtains a prediction macro block corresponding to the obtained motion vector from the reference frame.

또 다른 예로, 예측부(110)는 현재 프레임의 현재 매크로 블록을 영상 내에서 현재 매크로 블록의 주변 매크로 블록을 이용하여 예측하는 인트라 예측부로, 하나 이상의 주변 매크로 블록의 하나 이상의 화소값(Pixel Value)을 이용하여 현 재 매크로 블록의 각 화소의 예측 화소값(Predicted Pixel Value)을 계산함으로써 예측 매크로 블록을 예측한다. 여기서, 주변 매크로 블록은 현재 매크로 블록 이전에 압축되고 현재 매크로 블록의 주변에 위치한 하나 이상의 주변 매크로 블록일 수 있다.As another example, the predictor 110 is an intra predictor that predicts a current macroblock of a current frame using a neighboring macroblock of a current macroblock in an image, and at least one pixel value of at least one neighboring macroblock. The predicted macroblock is predicted by calculating a predicted pixel value of each pixel of the current macroblock using. Here, the peripheral macroblock may be one or more peripheral macroblocks that are compressed before the current macroblock and located around the current macroblock.

감산부(120)는 현재 블록에서 예측 블록을 감산하여 잔차 블록(Residual Block)을 생성한다. 즉, 감산부(120)는 현재 블록의 각 화소의 원 화소값(Original Pixel Value)과 예측 블록의 각 화소의 예측 화소값의 차이값을 계산하여 잔차 신호(Residual Signal)를 갖는 잔차 블록을 생성한다.The subtractor 120 subtracts the prediction block from the current block to generate a residual block. That is, the subtractor 120 generates a residual block having a residual signal by calculating a difference value between an original pixel value of each pixel of the current block and a predicted pixel value of each pixel of the prediction block. do.

변환부(130)는 잔차 블록을 주파수 영역으로 변환(Transform)한다. 즉, 변환부(130)는 잔차 블록을 주파수 영역(Frequency Domain)으로 변환하여 주파수 계수(Frequency Coefficient)를 갖는 잔차 블록을 생성한다. 여기서, 변환부(130)는 잔차 블록을 변환하는 데 있어서, 하다마드 변환(Hadamard Transform), 이산 코사인 변환 기반 변환(Discrete Cosine Transform Based Transform) 등과 같은 시간축의 화상 신호를 주파수축으로 변환하는 다양한 변환 기법을 이용하여 잔차 신호를 주파수 영역으로 변환할 수 있는데, 주파수 영역으로 변환된 잔차 신호가 주파수 계수가 된다.The transformer 130 transforms the residual block into the frequency domain. That is, the transformer 130 converts the residual block into a frequency domain to generate a residual block having a frequency coefficient. Here, the transform unit 130 transforms the residual block, and various transformations for transforming the image signal of the time axis to the frequency axis, such as a Hadamard transform, Discrete Cosine Transform Based Transform, etc. The residual signal can be converted into a frequency domain using a technique, and the residual signal converted into the frequency domain becomes a frequency coefficient.

양자화부(140)는 변환부(130)에서 변환된 잔차 블록을 양자화(Quantization)한다. 즉, 양자화부(140)는 잔차 블록의 주파수 계수를 양자화하여 양자화 주파수 계수를 생성한다. 여기서, 양자화부(140)는 잔차 블록의 주파수 계수를 양자화하는 데 있어서, 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization), 양자화 가중치 매트릭스(Quantization Weighted Matrix)를 이용하거나 그를 계량한 양자화 방법 등을 이용할 수 있다.The quantizer 140 quantizes the residual block transformed by the transformer 130. That is, the quantization unit 140 quantizes the frequency coefficients of the residual block to generate quantization frequency coefficients. Here, the quantization unit 140 uses Dead Zone Uniform Threshold Quantization (DZUTQ), Quantization Weighted Matrix, or the quantization method to quantize the frequency coefficient of the residual block. Etc. can be used.

부호화부(150)는 양자화부(140)에 의해 양자화된 잔차 블록의 주파수 계수들을 부호화하여 비트스트림을 생성한다. 또한, 부호화부(150)는 예측부(110)로부터 움직임 벡터 및 회전 정보가 전달되면, 잔차 블록의 양자화된 주파수 계수와 함께 부호화하여 비트스트림을 출력할 수 있다. 이러한 부호화 기술로서는 엔트로피 부호화(Entropy Encoding) 기술이 사용될 수 있으나, 반드시 이에 한정하지 않고 다른 다양한 부호화 기술이 사용될 수도 있을 것이다.The encoder 150 generates a bitstream by encoding the frequency coefficients of the residual block quantized by the quantizer 140. In addition, when the motion vector and the rotation information are transmitted from the predictor 110, the encoder 150 may output the bitstream by encoding the quantized frequency coefficients of the residual block. As the encoding technique, an entropy encoding technique may be used, but various encoding techniques may be used without being limited thereto.

역양자화부(160)는 양자화부(130)에 의해 양자화된 잔차 블록을 역 양자화(Inverse Quantization)한다. 즉, 역 양자화부(160)는 양자화된 잔차 블록의 양자화 주파수 계수를 역 양자화하여 주파수 계수를 생성한다.The inverse quantization unit 160 inverse quantizes the residual block quantized by the quantization unit 130. That is, the inverse quantizer 160 inversely quantizes the quantized frequency coefficients of the quantized residual block to generate frequency coefficients.

역변환부(170)는 역 양자화부(160)에 의해 역 양자화된 잔차 블록을 역 변환(Inverse Transform)한다. 즉, 역변환부(170)는 역 양자화된 잔차 블록의 주파수 계수를 역 변환하여 시간축상의 화소 신호를 갖는 잔차 블록을 복원한다.The inverse transform unit 170 inverse transforms the residual block inversely quantized by the inverse quantization unit 160. That is, the inverse transform unit 170 inversely transforms the frequency coefficients of the inverse quantized residual block to restore the residual block having the pixel signal on the time axis.

가산부(180)는 역 변환부(170)에 의해 역 변환된 잔차 블록에 예측부(110)에서 예측한 예측 블록을 가산하여 현재 블록을 복원한다.The adder 180 reconstructs the current block by adding the prediction block predicted by the predictor 110 to the residual block inversely transformed by the inverse transformer 170.

디블로킹 필터부(190)는 가산부(180)에 의해 복원된 현재 블록을 디블로킹 필터링(Deblcking Filtering)한다. 여기서, 디블로킹 필터링이란 영상을 블록 단위로 부호화하면서 발생하는 블록 왜곡을 감소시키는 작업을 말하며, 블록 경계와 매크로블록 경계에 디블로킹 필터를 적용하거나 매크로블록 경계에만 디블로킹 필터 를 적용하거나 디블로킹 필터를 사용하지 않는 방법 중 하나를 선택적으로 사용할 수 있다. 이와 같이, 가산부(180)에 의해 복원되고 디블로킹 필터부(190)에 의해 디블로킹 필터링된 현재 블록은 예측부(110)에 입력되어 다음 픽처를 예측할 때 사용되는 참조 픽처로서 저장될 수 있다. The deblocking filter 190 deblocks filtering the current block reconstructed by the adder 180. Here, the deblocking filtering refers to an operation of reducing block distortion generated by encoding an image in block units, and applying a deblocking filter to a block boundary and a macroblock boundary, or applying a deblocking filter only to a macroblock boundary or a deblocking filter. You can optionally use one of the methods that does not use. As such, the current block reconstructed by the adder 180 and deblocked filtered by the deblocking filter 190 may be input to the predictor 110 and stored as a reference picture used when predicting the next picture. .

본 발명의 실시예에 따른 디블록킹 필터부(190)는 현재 블록을 디블로킹 필터링하되, 특히 현재 블록의 경계를 기준으로 기 설정된 복수의 방향별로 필터링할 화소들을 선택하고, 그 선택된 화소들간의 화소값의 관계에 따라 해당 방향에 대한 필터링 여부를 결정하고, 그 결정된 필터링 여부에 따라 해당 방향의 선택된 화소들에 대해 필터링을 수행한다. 또한, 디블로킹 필터부(190)는 각 방향에 따라 선택된 화소들간의 화소값의 관계가, 해당 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 그 해당 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 그 해당 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 해당 방향을 필터링 방향으로 결정한다. 이와 같은 디블록킹 필터부(190)에 대해 도 2를 참조하여 더욱 상세히 설명한다.The deblocking filter unit 190 according to an embodiment of the present invention deblocks and filters the current block, in particular, selects pixels to be filtered in a plurality of preset directions based on the boundary of the current block, and selects pixels between the selected pixels. The filtering of the corresponding direction is determined according to the relationship between the values, and filtering is performed on the pixels selected in the corresponding direction according to the determined filtering. In addition, the deblocking filter unit 190 may determine that the relationship between the pixel values between the pixels selected in each direction is based on the absolute value of the pixel value difference between the first pixels facing the boundary and based on the corresponding boundary. The absolute value of the pixel value difference between the second pixel and the first pixel on the side, and the absolute value of the pixel value difference between the second pixel and the first pixel on the other side based on the corresponding boundary are smaller than the preset thresholds, respectively. If is satisfied, the direction is determined as the filtering direction. Such a deblocking filter 190 will be described in more detail with reference to FIG. 2.

도 2는 본 발명의 일 실시예에 따른 적응적 디블록킹 필터링 장치의 블록도로서, 도 1의 디블록킹 필터부(190)에 대응하므로 동일 부호를 부가하여 설명한다.FIG. 2 is a block diagram of an adaptive deblocking filtering apparatus according to an embodiment of the present invention, and corresponds to the deblocking filter unit 190 of FIG. 1.

도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 적응적 디블록킹 필터링 장치(190)는 경계 세기 결정부(191), 방향 선택부(193), 화소 선택부(195), 필터링 결정부(197), 및 필터링부(199)를 포함한다.As shown in FIG. 2, the adaptive deblocking filtering device 190 according to an embodiment of the present invention includes a boundary strength determiner 191, a direction selector 193, a pixel selector 195, and a filtering decision. The unit 197 and the filtering unit 199 are included.

경계 세기 결정부(191)는 현재 블록의 서브 블록간의 경계의 세기를 결정하는 것으로서, 현재 위치의 블록 경계에서 화소들이 속하는 블록의 특성에 따라 경계 세기(Boundary Strength: BS)를 결정한다. BS는 0과 4사이의 값을 갖고 결정하는 방법은 예를 들어 H.264/AVC 표준화 문서에 명시되어 있다. 즉, 경계 세기 결정부(191)는 각 블록의 경계면의 BS 값을 결정하고 각각의 BS 값에 따라서 어느 정도의 강도로 필터링을 적용할 것인지를 결정한다. BS는 현재 필터링 하고자 하는 경계가 속해 있는 블록이 화면내 예측(Intra Prediction) 부호화 사용 여부에 따라서, 또는 화면간 예측(Inter Prediction) 부호화를 사용할 경우 움직임 보상을 위한 참조 블록의 거리 차에 따라서 0과 4사이의 값으로 결정된다.The boundary strength determiner 191 determines the strength of the boundary between sub-blocks of the current block and determines the boundary strength (BS) according to the characteristics of the block to which pixels belong to the block boundary of the current position. The BS has a value between 0 and 4 and the method of determining is specified in the H.264 / AVC standardization document, for example. That is, the boundary strength determiner 191 determines the BS value of the boundary surface of each block and determines how much strength to apply filtering according to each BS value. The BS determines whether 0 and 0 depend on the distance between the reference block for motion compensation when the block to which the boundary to be filtered currently belongs uses intra prediction encoding or when using inter prediction encoding. It is determined by a value between four.

방향 선택부(193)는 블록 경계를 기준으로 기 설정된 복수의 방향 중 하나씩 순차적으로 선택한다. 즉, 방향 선택부(193)는, 일 예로 도 3에 도시된 바와 같이 블록 경계면에 대하여 45도, 90도, 및 135도의 3가지 방향으로 필터링할 방향을 기 설정하고 이 3가지의 방향 중 하나씩 순차적으로 선택하거나, 다른 예로 도 5에 도시된 바와 같이 수평 또는 수직 경계면에 대하여 45도, 56.25도, 67.5도, 78.75도, 90도, 101.25도, 112.5도, 123.75도 및 135도의 9가지 방향으로 필터링할 방향을 기 설정하고 이 9가지의 방향 중 하나씩 순차적으로 선택할 수 있다. The direction selector 193 sequentially selects one of a plurality of preset directions based on the block boundary. That is, the direction selector 193 presets a direction to filter in three directions of 45 degrees, 90 degrees, and 135 degrees with respect to the block boundary surface as shown in FIG. 3, for example, one of the three directions. Selected sequentially, or as another example, in nine directions: 45 degrees, 56.25 degrees, 67.5 degrees, 78.75 degrees, 90 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees, and 135 degrees with respect to the horizontal or vertical boundary as shown in FIG. The direction to filter can be preset and one of these nine directions can be selected sequentially.

화소 선택부(195)는 방향 선택부(193)에 의해 선택된 방향에 근거하여 필터링할 화소들을 선택한다. 즉, 화소 선택부(195)는, 일 예로 방향 선택부(193)에 의해 도 3과 같이 45도, 90도, 및 135도의 3가지 방향 중 선택된 1가지의 방향에 대해 도 4에 도시된 바와 같이 필터링할 화소들을 선택하거나, 다른 예로 방향 선택 부(193)에 의해 도 5과 같이 45도, 56.25도, 67.5도, 78.75도, 90도, 101.25도, 112.5도, 123.75도 및 135도의 9가지 방향 중 선택된 1가지의 방향에 대해 도 6내지 도 14에 도시된 바와 같이 필터링할 화소들을 선택한다.The pixel selector 195 selects pixels to filter based on the direction selected by the direction selector 193. That is, the pixel selector 195 is, for example, as shown in FIG. 4 with respect to one direction selected from three directions of 45 degrees, 90 degrees, and 135 degrees by the direction selector 193 as shown in FIG. 3. Likewise, the pixels to be filtered are selected, or as another example, the nine directions of 45 degrees, 56.25 degrees, 67.5 degrees, 78.75 degrees, 90 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees, and 135 degrees as shown in FIG. The pixels to be filtered are selected as shown in Figs. 6 to 14 for one of the selected directions.

필터링 결정부(197)는 화소 선택부(195)에 의해 선택된 화소들간의 화소값의 관계에 따라 방향 선택부(193)에 의해 선택된 해당 방향에 대한 필터링 여부를 결정한다. 즉, 필터링 결정부(197)는 화소 선택부(195)에 의해 선택된 화소들간의 화소값의 관계가, 해당 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 해당 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 해당 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 방향 선택부(193)에 의해 선택된 해당 방향을 필터링 방향으로 결정한다. 이와 같은 필터링 결정부(197)에서의 필터링 여부 결정 과정에 대한 구체적인 예시는 후술하도록 한다.The filtering determiner 197 determines whether to filter the corresponding direction selected by the direction selector 193 according to the relationship between the pixel values between the pixels selected by the pixel selector 195. In other words, the filtering determiner 197 determines that the relationship between the pixel values between the pixels selected by the pixel selector 195 is the absolute value of the pixel value difference between the first pixels facing the boundary, based on the boundary. The absolute value of the pixel value difference between the second pixel and the first pixel on one side, and the absolute value of the pixel value difference between the second pixel and the first pixel on the other side based on the corresponding boundary are smaller than the preset thresholds, respectively. If the condition is satisfied, the direction selected by the direction selector 193 is determined as the filtering direction. A detailed example of the filtering determination process in the filtering determination unit 197 will be described later.

필터링부(199)는 필터링 결정부(197)에 의해 결정된 필터링 여부에 따라 해당 방향의 해당 화소들에 대해 디블록킹 필터링을 수행하되, 필터링 결정부(197)에 의해 결정된 필터링 방향이 다수일 경우, 다수의 필터링 방향 중 하나 이상 선택하여 필터링을 수행할 수 있다.The filtering unit 199 performs deblocking filtering on the pixels in the corresponding direction according to the filtering determined by the filtering determining unit 197, but when the filtering direction determined by the filtering determining unit 197 is multiple, One or more filtering directions may be selected to perform filtering.

도 15는 본 발명의 일 실시예에 따른 적응적 디블록킹 필터링 방법의 흐름도로서, 도 2의 장치에 적용되므로 그 장치의 동작과 함께 설명한다.FIG. 15 is a flowchart of an adaptive deblocking filtering method according to an embodiment of the present invention, which is applied to the apparatus of FIG. 2 and described with the operation of the apparatus.

본 발명의 일 실시예의 설명을 위하여, 우선 H.264(“Advanced video coding for generic audiovisual services”, Draft, ITU-T Recommendation H.264, Mar, 2005, p.182~p.194)의 디블록킹 필터링 방법에 대해 간단히 설명한다.In order to explain an embodiment of the present invention, first, deblocking of H.264 (“Advanced video coding for generic audiovisual services”, Draft, ITU-T Recommendation H.264, Mar, 2005, p. 182 to p.194) Briefly explain the filtering method.

H.264의 디블록킹 필터링 방법은, 잔여 신호의 이산 여현 변환(DCT)과 양자화(Quantization) 단위인 4x4 블록의 경계 면을 기준으로 하여 도 16과 같이 수직방향으로 필터링을 취하고, 그 다음 도 17과 같이 수평 방향으로 필터링을 취한다.In the deblocking filtering method of H.264, filtering is performed in the vertical direction as shown in FIG. 16 based on the boundary surface of the discrete cosine transform (DCT) and the quantization unit of the 4x4 block of the residual signal. Filter in the horizontal direction as follows.

먼저 디블록킹 필터를 적용하기에 앞서 도 18과 같이 p0 ~ p3으로 구성된 블록과 q0 ~ q3으로 구성된 블록이 있을 때, 각 블록의 경계면에 대해 블록 경계 세기(Boundary Strength: BS) 값을 결정하고 각각의 블록 경계 세기 값에 따라서 어느 정도의 강도로 필터링을 적용할 것인지를 결정한다. 필터링 세기는 현재 필터링 하고자 하는 경계가 속해 있는 블록이 화면내 예측(Intra Prediction) 부호화 사용 여부에 따라서, 혹은 화면간 예측(Inter Prediction) 부호화를 사용할 경우 움직임 보상을 위한 참조 블록의 거리 차에 따라서 0과 4사이의 값으로 결정된다.First, before applying the deblocking filter, when there are blocks composed of p0 to p3 and blocks composed of q0 to q3 as shown in FIG. 18, a block boundary strength (BS) value is determined for the boundary of each block. The strength of the filter boundary is determined based on the block boundary strength value of the filter. The filtering strength is 0 depending on whether the block to which the boundary to be filtered currently belongs uses intra prediction encoding or when distance between the reference blocks for motion compensation is used when inter prediction encoding is used. It is determined by a value between and 4.

블록 경계 세기 값이 결정되면 각 블록의 경계 면의 화소들이 블록킹 아티팩트에 의해 왜곡된 경계 면인지, 실제 영상에 존재하는 에지인지 판별하여 필터링을 수행해야 할지를 결정하게 된다. H.264에서는 다음과 같은 [식 1]을 만족시키지 못할 경우에는 실제 영상에 존재하는 에지라고 판별하여 필터링을 수행하지 않고, 조건식을 만족하는 경우에는 블로킹 아티팩트에 의해 왜곡된 경계 면이라고 판단하여 디블록킹 필터를 수행하게 된다.If the block boundary strength value is determined, it is determined whether the filtering should be performed by determining whether the pixels of the boundary surface of each block are the boundary surface distorted by the blocking artifact or the edge present in the actual image. In case H.264 does not satisfy the following [Equation 1], it is determined that the edge exists in the real image and filtering is not performed. If the condition is satisfied, H.264 judges that the boundary is distorted by blocking artifacts. Blocking filter will be performed.

[식 1][Equation 1]

Figure 112008074141212-PAT00001
Figure 112008074141212-PAT00001

Figure 112008074141212-PAT00002
;
Figure 112008074141212-PAT00003
;
Figure 112008074141212-PAT00004
Figure 112008074141212-PAT00002
;
Figure 112008074141212-PAT00003
;
Figure 112008074141212-PAT00004

여기서

Figure 112008074141212-PAT00005
,
Figure 112008074141212-PAT00006
는 양자화 파라미터(Quantization Parameter)에 따라 적응적으로 그 값이 결정되는 값으로써, 현재 경계 면이 블록킹 아티팩트로 발생한 화소 값의 차이인지, 실제 에지에 의한 것인지를 판별할 수 있는 문턱치(Threshold) 값을 의미한다. 양자화 정도가 큰 경우에는 블록킹 아티팩트의 정도가 더욱 크게 발생하므로 문턱치의 값이 크게 설정되는 구조로 되어 있다.here
Figure 112008074141212-PAT00005
,
Figure 112008074141212-PAT00006
Is a value that is adaptively determined according to a quantization parameter, and is a threshold value for determining whether a current boundary is a difference between pixel values caused by blocking artifacts or an actual edge. it means. If the degree of quantization is large, the degree of blocking artifacts is greater, and thus the threshold value is set large.

필터링의 수행 여부가 결정되면 상기의 블록 경계 강도 값에 따라서 저 대역 필터링을 사용하여 경계면 양단의 화소에 대하여 부드럽게 만들어준다. 필터링에 대한 연산 방법은 예를 들어 H.264(“Advanced video coding for generic audiovisual services”, Draft, ITU-T Recommendation H.264, Mar, 2005, p.182~p.194)에 명시된 방법을 사용할 수 있다.When it is determined whether filtering is performed or not, the low band filtering is used according to the block boundary strength value to smooth the pixels on both sides of the boundary surface. The calculation method for filtering can be used, for example, using the method specified in H.264 (“Advanced video coding for generic audiovisual services”, Draft, ITU-T Recommendation H.264, Mar, 2005, p. 182 to p.194). Can be.

상술한 바와 같이, H.264의 디블록킹 필터는 블록의 부호화 속성에 따라 필터 강도를 결정하고, 블록 경계 면에 [식 1]을 이용해 에지 존재 여부를 판별하여 에지 성분은 최대한 보존하면서 각 경계 면에 대하여 적응적으로 디블록킹 필터링을 수행함으로써, 블록킹 아티팩트를 줄여준다. 하지만, 이와 같이 수평과 수직 방향으로만 디블록킹 필터링을 수행할 경우 대각선 방향의 불연속에 의해 발생하는 블록킹 아티팩트에 의한 왜곡은 보정할 수가 없다.As described above, the deblocking filter of H.264 determines the filter strength according to the encoding property of the block, and determines whether or not the edge exists by using [Equation 1] on the block boundary surface, while preserving the edge components as much as possible, each boundary surface By adaptively performing deblocking filtering on, we reduce blocking artifacts. However, when the deblocking filtering is performed only in the horizontal and vertical directions as described above, the distortion due to blocking artifacts caused by the discontinuity in the diagonal direction cannot be corrected.

좀 더 자세히 살펴보면, 기존의 수평과 수직 방향으로만 디블록킹 필터를 수행하게 되면, 도 19의 (a)와 같이 블록 경계 면에 대각선 방향의 에지 성분이 존재 할 경우에는 p0 ~ p3 화소와 q0 ~ q3 화소로 구성되는 경계 면에 대하여 [식 1]을 적용했을 때, 조건을 만족하지 못하여 에지라고 판별하고 디블록킹 필터링을 수행하지 않게 된다. 그러나, 만약 A 블록과 B 블록의 블록 경계 강도 값이 1 이상이라면 p0과 dq0이 같은 값을 갖는 화소임에도 불구하고 블록킹 아티팩트로 인하여 화소 값의 불연속이 사선 방향으로 발생하는 것을 관찰할 수 있다. 그러므로 사선 방향으로 발생하는 화소 간의 불연속으로 인한 블록킹 아티팩트를 해결하기 위해서는, 수직과 수평 방향뿐만 아니라 사선 방향으로 디블록킹 필터링을 적응적으로 수행해야 할 것이다. 좀 더 구체적으로는 도 19의 (b)와 같이 대각선 방향으로 경계 면에 저 대역 필터링을 취한다면 p0과 q0의 화소 값이 비슷하게 변하면서 부드러워져 블록 경계 면의 화소 값 불연속에 의한 왜곡을 해소할 수 있을 것이다.In more detail, when the deblocking filter is performed only in the existing horizontal and vertical directions, as shown in FIG. 19 (a), when there are diagonal edge components on the block boundary surface, p0 to p3 pixels and q0 to When [Equation 1] is applied to the boundary surface composed of q3 pixels, the condition is not satisfied and the edge is not determined and the deblocking filtering is not performed. However, if the block boundary strength values of the A blocks and the B blocks are equal to or greater than 1, it can be observed that discontinuities of pixel values occur due to blocking artifacts even though p0 and dq0 have the same value. Therefore, in order to solve the blocking artifacts caused by the discontinuity between the pixels occurring in the diagonal direction, it is necessary to adaptively perform the deblocking filtering in the diagonal direction as well as the vertical and horizontal directions. More specifically, if low-band filtering is performed on the boundary surface in the diagonal direction as shown in (b) of FIG. 19, the pixel values of p0 and q0 are changed and smoothed to solve the distortion caused by the discontinuity of pixel values at the block boundary surface. Could be.

따라서, 본 발명의 실시예는 수직과 수평 방향뿐만 아니라 그 밖의 방향에 대해서도 디블록킹 필터를 수행할 수 있도록 한다.Accordingly, embodiments of the present invention allow the deblocking filter to be performed not only in the vertical and horizontal directions but also in other directions.

본 발명의 실시예 1에서는 각 경계 면의 화소 마다 각각 세가지 방향에 대해서 실제 에지에 의한 경계 면인지 블록킹 아티팩트에 의한 경계 면인지를 검사하고, 블록킹 아티팩트라고 생각되는 모든 방향에 대해서 필터링을 수행한다.In Embodiment 1 of the present invention, each pixel of each boundary plane is inspected for three directions, respectively, whether the boundary plane is the boundary plane due to the actual edge or the blocking artifact, and the filtering is performed for all the directions considered to be blocking artifacts.

실시예 1Example 1

도 16 및 도 17의 수직 및 수평 방향의 모든 경계 면에 존재하는 화소에 대하여 아래의 단계 1 내지 단계 5를 수행한다.Steps 1 to 5 below are performed on the pixels existing on all boundary surfaces in the vertical and horizontal directions of FIGS. 16 and 17.

단계 1: 경계 세기 결정 단계(S1510)에서 경계 세기 결정부(191)는 4x4 블록의 경계에 대하여 블록 경계 세기(BS)를 결정한다. BS가 0일 경우 디블록킹 필터링 를 취하지 않고, BS가 1~4일 때는 조건식을 검사하여 디블록킹 필터링을 수행해야 할지를 결정한다.Step 1: Determining boundary strength In step S1510, the boundary strength determining unit 191 determines a block boundary strength BS with respect to a boundary of a 4 × 4 block. If the BS is 0, the deblocking filtering is not performed. If the BS is 1 to 4, the BS determines whether the deblocking filtering should be performed by checking the conditional expression.

단계 2: 방향 선택 단계(S1530)에서 방향 선택부(193)는 도 3에 도시된 바와 같이 경계 면의 모든 화소에 대해서 45도, 90도 및 135도의 3가지 방향 중 하나씩 차례로 선택한다.Step 2: In the direction selecting step S1530, the direction selecting unit 193 sequentially selects one of three directions of 45 degrees, 90 degrees, and 135 degrees for all the pixels on the boundary surface as shown in FIG. 3.

단계 3: 화소 선택 단계(S1550)에서 화소 선택부(195)는 도 4에 도시된 바와 같이 방향 선택부(193)에 의해 선택된 방향에 따라 필터링할 화소들을 선택한다.Step 3: In the pixel selection step S1550, the pixel selector 195 selects pixels to be filtered according to the direction selected by the direction selector 193 as shown in FIG. 4.

단계 4 및 단계 5: 필터링 결정 단계(S1570)에서 필터링 결정부(197)는 화소 선택부(195)에 의해 선택된 화소들간의 화소값의 관계에 따라 방향 선택부(193)에 의해 선택된 방향에 대한 필터링 여부를 결정하고, 필터링 결정 단계(S1590)에서 필터링부(199)는 필터링 결정부(197)에 의해 결정된 방향의 화소들에 대해 BS 값에 따라서 디블록킹 필터링 연산을 수행한다. 즉, 필터링 결정부(197)는 화소 선택부(195)에 의해 선택된 화소들간의 화소값의 관계가 기 설정된 조건을 만족하는가의 여부를 검사하고, 조건을 만족시키는 방향에 대하여 필터링을 수행하도록 결정하며, 필터링부(199)는 필터링 결정부(197)에 의해 결정된 방향의 화소들에 대해 BS 값에 따라서 디블록킹 필터링 연산을 수행한다. 구체적으로 살펴보면, 도 4에서와 같이 45도, 90도, 및 135도 방향에 대하여 아래의 [조건식 1], [조건식 2], 및 [조건식 3]을 각각 검사하고, 조건을 만족시키면 해당 방향에 위치하는 화소들을 이용하여 디블록킹 필터 연산을 수행한다.Step 4 and Step 5: Filtering Determination In operation S1570, the filtering determination unit 197 may determine the direction selected by the direction selection unit 193 according to the relationship of the pixel values between the pixels selected by the pixel selection unit 195. In operation S1590, the filtering unit 199 performs a deblocking filtering operation on the pixels in the direction determined by the filtering determination unit 197 according to the BS value. That is, the filtering determiner 197 determines whether the relationship between the pixel values between the pixels selected by the pixel selector 195 satisfies a preset condition, and determines to perform filtering on the direction satisfying the condition. The filtering unit 199 performs a deblocking filtering operation on the pixels in the direction determined by the filtering determination unit 197 according to the BS value. Specifically, as shown in FIG. 4, the following [Conditions 1], [Conditions 2], and [Conditions 3] are examined in the 45 °, 90 °, and 135 ° directions, respectively. The deblocking filter operation is performed by using the located pixels.

[조건식 1][Condition 1]

Figure 112008074141212-PAT00007
;
Figure 112008074141212-PAT00008
;
Figure 112008074141212-PAT00009
Figure 112008074141212-PAT00007
;
Figure 112008074141212-PAT00008
;
Figure 112008074141212-PAT00009

45 도 방향일 경우, [조건식 1]을 만족하면 BS 값에 따라 필터링 연산을 수행한다. 이 때, 디블록킹 필터 연산을 하기 위해 사용되는 화소는 45도 방향에 위치하는 화소들로써 p0, dp1, dp2, dp3, dq0, dq1, dq2, dq3을 사용한다. 이 때,

Figure 112008074141212-PAT00010
,
Figure 112008074141212-PAT00011
는 상수로 문턱치 값을 조절하여, 대각선 방향에서의 디블록킹 필터링의 수행 정도를 결정하는 것이 가능하다. In the case of 45 degree direction, if [Condition 1] is satisfied, filtering operation is performed according to BS value. In this case, the pixels used for the deblocking filter operation use p0, dp1, dp2, dp3, dq0, dq1, dq2, and dq3 as pixels positioned in the 45 degree direction. At this time,
Figure 112008074141212-PAT00010
,
Figure 112008074141212-PAT00011
It is possible to determine the degree of performance of deblocking filtering in the diagonal direction by adjusting the threshold value with a constant.

[조건식 2][Condition Formula 2]

Figure 112008074141212-PAT00012
;
Figure 112008074141212-PAT00013
;
Figure 112008074141212-PAT00014
Figure 112008074141212-PAT00012
;
Figure 112008074141212-PAT00013
;
Figure 112008074141212-PAT00014

90 도 방향일 경우, [조건식 2]를 만족하면 BS 값에 따라 필터링 연산을 수행한다. 이 때, 디블록킹 필터 연산을 하기 위해 사용되는 화소는 p0, p1, p2, p3, q0, q1, q2, q3 이다.In the 90 degree direction, if [Condition 2] is satisfied, the filtering operation is performed according to the BS value. At this time, the pixels used for the deblocking filter operation are p0, p1, p2, p3, q0, q1, q2, q3.

[조건식 3][Condition 3]

Figure 112008074141212-PAT00015
;
Figure 112008074141212-PAT00016
;
Figure 112008074141212-PAT00017
Figure 112008074141212-PAT00015
;
Figure 112008074141212-PAT00016
;
Figure 112008074141212-PAT00017

135 도 방향일 경우, [조건식 3]을 만족하면 BS 값에 따라 필터링 연산을 수행한다. 이 때, 디블록킹 필터 연산을 하기 위해 사용되는 화소는 135도 방향에 위치하는 화소들로써 p0, ap1, ap2, ap3, aq0, aq1, aq2, aq3을 사용한다.In the 135 degree direction, if the condition 3 is satisfied, the filtering operation is performed according to the BS value. In this case, the pixels used for the deblocking filter operation use p0, ap1, ap2, ap3, aq0, aq1, aq2, and aq3 as pixels located in the 135 degree direction.

본 발명의 실시예 2에서는 각 경계 면의 화소 마다 각각 9가지 방향에 대해서 실제 에지에 의한 경계 면인지 블록킹 아티팩트에 의한 경계 면인지를 검사하 고, 그 중에서 가장 적합한 방향을 선택하여 필터링을 수행한다. 후술하는 실시예 2에서는 9가지 방향 중에서 1가지 방향을 선택하였지만 이 것은 일 예에 해당하는 것일 뿐, 그 밖의 다수의 방향에서 적합한 다수의 방향을 선택하더라도 본 발명의 범주에 속할 것이다.In Embodiment 2 of the present invention, each pixel of each boundary plane is inspected for each of nine directions to determine whether the boundary plane is a real edge or a blocking artifact, and the filtering is performed by selecting the most suitable direction. . In Example 2 described later, one direction is selected from nine directions, but this is only an example, and even if a plurality of suitable directions are selected from other directions, they will fall within the scope of the present invention.

실시예 2Example 2

도 16 및 도 17의 수직 및 수평 방향의 모든 경계 면에 존재하는 화소에 대하여 아래의 단계 1 내지 단계 5를 수행한다.Steps 1 to 5 below are performed on the pixels existing on all boundary surfaces in the vertical and horizontal directions of FIGS. 16 and 17.

단계 1: 경계 세기 결정 단계(S1510)에서 경계 세기 결정부(191)는 4x4 블록의 경계에 대하여 블록 경계 세기(BS)를 결정한다. BS가 0일 경우 디블록킹 필터링를 취하지 않고, BS가 1~4일 때는 조건식을 검사하여 디블록킹 필터링을 수행해야 할지를 결정한다.Step 1: Determining boundary strength In step S1510, the boundary strength determining unit 191 determines a block boundary strength BS with respect to a boundary of a 4 × 4 block. If the BS is 0, deblocking filtering is not performed. If the BS is 1 to 4, the BS determines whether deblocking filtering should be performed by checking a conditional expression.

단계 2: 방향 선택 단계(S1530)에서 방향 선택부(193)는 도 5의 (a) 및 (b)에 도시된 바와 같이 수평 및 수직 경계 면의 모든 화소에 대해서 45도, 56.25도, 67.5도, 78.75도, 90도, 101.25도, 112.5도, 123.75도 및 135도의 9 가지 방향 중 하나씩 차례로 선택한다.Step 2: In the direction selection step S1530, the direction selector 193 is 45 degrees, 56.25 degrees, and 67.5 degrees for all the pixels on the horizontal and vertical boundary planes as shown in FIGS. 5A and 5B. , One of nine directions, 78.75 degrees, 90 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees, and 135 degrees.

단계 3: 화소 선택 단계(S1550)에서 화소 선택부(195)는 도 6 내지 도 14에 도시된 바와 같이 방향 선택부(193)에 의해 선택된 방향에 따라 필터링할 화소들을 선택한다.Step 3: In the pixel selection step S1550, the pixel selector 195 selects pixels to be filtered according to the direction selected by the direction selector 193 as illustrated in FIGS. 6 to 14.

단계 4 및 단계 5: 필터링 결정 단계(S1570)에서 필터링 결정부(197)는 화소 선택부(195)에 의해 선택된 화소들간의 화소값의 관계에 따라 방향 선택부(193)에 의해 선택된 방향에 대한 필터링 여부를 결정하고, 필터링 결정 단계(S1590)에서 필터링부(199)는 필터링 결정부(197)에 의해 결정된 방향의 화소들에 대해 BS 값에 따라서 디블록킹 필터링 연산을 수행한다. 즉, 필터링 결정부(197)는 화소 선택부(195)에 의해 선택된 화소들간의 화소값의 관계가 기 설정된 조건을 만족하는가의 여부를 검사하고, 조건을 만족시키는 방향에 대하여 필터링을 수행하도록 결정하며, 필터링부(199)는 필터링 결정부(197)에 의해 결정된 방향의 화소들에 대해 BS 값에 따라서 디블록킹 필터링 연산을 수행한다. 구체적으로 살펴보면, 도 6 내지 도 14에서와 같이 90도, 78.75도, 67.5도, 56.25도, 45도, 101.25도, 112.5도, 123.75도 및 135도의 9 가지 방향에 대하여 아래의 [조건식 4], [조건식 5], [조건식 6], [조건식 7], [조건식 8], [조건식 9], [조건식 10], [조건식 11], 및 [조건식 12]를 각각 검사하고, 조건을 만족시키면 해당 방향에 위치하는 화소들을 이용하여 디블록킹 필터 연산을 수행한다.Step 4 and Step 5: Filtering Determination In operation S1570, the filtering determination unit 197 may determine the direction selected by the direction selection unit 193 according to the relationship of the pixel values between the pixels selected by the pixel selection unit 195. In operation S1590, the filtering unit 199 performs a deblocking filtering operation on the pixels in the direction determined by the filtering determination unit 197 according to the BS value. That is, the filtering determiner 197 determines whether the relationship between the pixel values between the pixels selected by the pixel selector 195 satisfies a preset condition, and determines to perform filtering on the direction satisfying the condition. The filtering unit 199 performs a deblocking filtering operation on the pixels in the direction determined by the filtering determination unit 197 according to the BS value. Specifically, as shown in FIGS. 6 to 14, the following nine conditions of 90 degrees, 78.75 degrees, 67.5 degrees, 56.25 degrees, 45 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees, and 135 degrees are given below. [Condition 5], [Condition 6], [Condition 7], [Condition 8], [Condition 9], [Condition 10], [Condition 11], and [Condition 11], respectively. A deblocking filter operation is performed using pixels positioned in the direction.

각 방향에 대한 조건식은 구체적으로 아래와 같다. 이 때,

Figure 112008074141212-PAT00018
Figure 112008074141212-PAT00019
는 상수로 문턱치 값을 조절하여, 각각의 방향에서 디블록킹 필터링의 수행 정도를 결정하는 것이 가능하다. The conditional expression for each direction is specifically as follows. At this time,
Figure 112008074141212-PAT00018
Wow
Figure 112008074141212-PAT00019
It is possible to determine the degree of performance of deblocking filtering in each direction by adjusting the threshold value with a constant.

도 6의 90도 방향에 대한 조건식은 아래의 [조건식 4]와 같다.The conditional expression for the 90 degree direction of FIG. 6 is as follows [Condition 4].

[조건식 4][Condition 4]

Figure 112008074141212-PAT00020
;
Figure 112008074141212-PAT00021
;
Figure 112008074141212-PAT00022
Figure 112008074141212-PAT00020
;
Figure 112008074141212-PAT00021
;
Figure 112008074141212-PAT00022

도 7의 78.75도 방향에 대한 조건식은 아래의 [조건식 5]와 같다.The conditional expression for the 78.75 degree direction of FIG. 7 is as follows [Condition 5].

[조건식 5][Condition 5]

Figure 112008074141212-PAT00023
;
Figure 112008074141212-PAT00024
;
Figure 112008074141212-PAT00025
Figure 112008074141212-PAT00023
;
Figure 112008074141212-PAT00024
;
Figure 112008074141212-PAT00025

도 8의 67.5도 방향에 대한 조건식은 아래의 [조건식 6]과 같다.The conditional expression for the direction of 67.5 degrees of FIG. 8 is as follows [Condition 6].

[조건식 6][Condition 6]

Figure 112008074141212-PAT00026
;
Figure 112008074141212-PAT00027
;
Figure 112008074141212-PAT00028
Figure 112008074141212-PAT00026
;
Figure 112008074141212-PAT00027
;
Figure 112008074141212-PAT00028

도 9의 56.25도 방향에 대한 조건식은 아래의 [조건식 7]과 같다.The conditional expression for the 56.25 degree direction of FIG. 9 is as follows [Condition 7].

[조건식 7][Condition 7]

Figure 112008074141212-PAT00029
;
Figure 112008074141212-PAT00030
;
Figure 112008074141212-PAT00031
Figure 112008074141212-PAT00029
;
Figure 112008074141212-PAT00030
;
Figure 112008074141212-PAT00031

도 10의 45도 방향에 대한 조건식은 아래의 [조건식 8]과 같다.The conditional expression for the 45 degree direction of FIG. 10 is as follows [conditional formula 8].

[조건식 8][Condition 8]

Figure 112008074141212-PAT00032
;
Figure 112008074141212-PAT00033
;
Figure 112008074141212-PAT00034
Figure 112008074141212-PAT00032
;
Figure 112008074141212-PAT00033
;
Figure 112008074141212-PAT00034

도 11의 101.25도 방향에 대한 조건식은 아래의 [조건식 9]와 같다.The conditional expression for the direction of 101.25 degree of FIG. 11 is as follows [Condition 9].

[조건식 9][Condition 9]

Figure 112008074141212-PAT00035
;
Figure 112008074141212-PAT00036
;
Figure 112008074141212-PAT00037
Figure 112008074141212-PAT00035
;
Figure 112008074141212-PAT00036
;
Figure 112008074141212-PAT00037

도 12의 112.5도 방향에 대한 조건식은 아래의 [조건식 10]과 같다.The conditional expression for the direction of 112.5 degrees in FIG. 12 is as follows [conditional expression 10].

[조건식 10][Condition 10]

Figure 112008074141212-PAT00038
;
Figure 112008074141212-PAT00039
;
Figure 112008074141212-PAT00040
Figure 112008074141212-PAT00038
;
Figure 112008074141212-PAT00039
;
Figure 112008074141212-PAT00040

도 13의 123.75도 방향에 대한 조건식은 아래의 [조건식 11]과 같다.The conditional expression for the direction of 123.75 degree of FIG. 13 is as follows [Condition 11].

[조건식 11][Condition 11]

Figure 112008074141212-PAT00041
;
Figure 112008074141212-PAT00042
;
Figure 112008074141212-PAT00043
Figure 112008074141212-PAT00041
;
Figure 112008074141212-PAT00042
;
Figure 112008074141212-PAT00043

도 14의 135도 방향에 대한 조건식은 아래의 [조건식 12]와 같다.Conditional formulas for the 135-degree direction of FIG. 14 are as follows.

[조건식 12][Condition 12]

Figure 112008074141212-PAT00044
;
Figure 112008074141212-PAT00045
;
Figure 112008074141212-PAT00046
Figure 112008074141212-PAT00044
;
Figure 112008074141212-PAT00045
;
Figure 112008074141212-PAT00046

필터링부(199)는 만약 도 6 내지 도 14에 도시된 모든 방향 중에서 조건식을 만족하는 방향이 다수개가 선정되었을 경우, 선정된 각 방향에 대해 경계 면상에서 화소간의 변화량을 구하고, 변화량이 가장 작은 한가지 또는 변화량이 작은 순으로 복수 개를 선택하여 디블록킹 필터링을 수행한다.If a plurality of directions satisfying the conditional expression are selected among all the directions shown in FIGS. 6 to 14, the filtering unit 199 calculates the amount of change between pixels on the boundary surface for each of the selected directions, and the one with the smallest amount of change. Alternatively, deblocking filtering may be performed by selecting a plurality of values in a small order of change.

경계면에서 각각의 방향에 대한 화소간의 변화량을 구하는 식은 아래와 같다.

Figure 112008074141212-PAT00047
는 경계 면의 화소(pixel)에서의 방향 세트에서 화소 간의 변화량을 나타낸다.
Figure 112008074141212-PAT00048
Figure 112008074141212-PAT00049
은 가중치(weight)를 나타내는 상수로써, 블록 간의 경계 근처 화소 간의 변화량이 경계에서 멀리 떨어져 있는 화소간의 변화량보다 전체 변화량에 더 큰 비중을 갖도록
Figure 112008074141212-PAT00050
,
Figure 112008074141212-PAT00051
을 만족하는 값으로 설정된다.The equation for calculating the amount of change between pixels in each direction at the interface is as follows.
Figure 112008074141212-PAT00047
Denotes the amount of change between pixels in the set of directions in pixels of the interface.
Figure 112008074141212-PAT00048
Wow
Figure 112008074141212-PAT00049
Is a constant that represents the weight, so that the amount of change between pixels near the boundary between blocks has a greater proportion to the total amount of change than the amount of change between pixels far away from the boundary.
Figure 112008074141212-PAT00050
,
Figure 112008074141212-PAT00051
It is set to a value satisfying.

각 방향에 대한 변화량을 구하는 식은 구체적으로 아래와 같다The equation for calculating the change amount in each direction is as follows.

도 6 내지 도 14에 도시된 90도, 78.75도, 67.5도, 56.25도, 45도, 101.25도, 112.5도, 123.75도 및 135도의 9 가지 방향에 대한 변화량은 아래의 [식 2] 내 지 [식 10]에 의해 각각 구해진다.The changes in the nine directions of 90 degrees, 78.75 degrees, 67.5 degrees, 56.25 degrees, 45 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees and 135 degrees shown in FIGS. 6 to 14 are shown in [Equation 2] to [ Equation 10] respectively.

[식 2][Equation 2]

Figure 112008074141212-PAT00052
Figure 112008074141212-PAT00052

[식 3][Equation 3]

Figure 112008074141212-PAT00053
Figure 112008074141212-PAT00053

[식 4][Equation 4]

Figure 112008074141212-PAT00054
Figure 112008074141212-PAT00054

[식 5][Equation 5]

Figure 112008074141212-PAT00055
Figure 112008074141212-PAT00055

[식 6][Equation 6]

Figure 112008074141212-PAT00056
Figure 112008074141212-PAT00056

[식 7][Equation 7]

Figure 112008074141212-PAT00057
Figure 112008074141212-PAT00057

[식 8][Equation 8]

Figure 112008074141212-PAT00058
Figure 112008074141212-PAT00058

[식 9][Equation 9]

Figure 112008074141212-PAT00059
Figure 112008074141212-PAT00059

[식 10][Equation 10]

Figure 112008074141212-PAT00060
Figure 112008074141212-PAT00060

9가지의 각 방향에 대하여 디블록킹 필터링을 적용할 때 사용되는 화소 즉, 화소 선택부(195)에 의해 선택된 화소는, 도 6내지 도 14에 도시된 바와 같이 각 방향에 대해 굵은 테두리로 표기된 화소를 사용한다. 예를 들어, 도 8의 67.5도 방향에서 사용되는 픽셀은 p04, p14, p25, p35, q03, q13, q22, 및 q32 이다.The pixels used when the deblocking filtering is applied to each of the nine directions, that is, the pixels selected by the pixel selector 195 are pixels marked with bold borders for each direction as shown in FIGS. 6 to 14. Use For example, the pixels used in the 67.5 degree direction of FIG. 8 are p04, p14, p25, p35, q03, q13, q22, and q32.

도 20은 본 발명의 일 실시예에 따른 동영상 복호화 장치의 블록도이다.20 is a block diagram of a video decoding apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 동영상 복호화 장치(2000)는 복호화부(2010), 역양자화부(2020), 역변환부(2030), 예측부(2040), 가산부(2050) 및 디블로킹 필터부(2060)를 포함하여 구성될 수 있다.The video decoding apparatus 2000 according to an embodiment of the present invention includes a decoder 2010, an inverse quantizer 2020, an inverse transform unit 2030, a predictor 2040, an adder 2050, and a deblocking filter unit. 2060 may be configured to be included.

이러한 동영상 복호화 장치(2000)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 이동통신 단말기(Mobile Communication Terminal) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 복호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The video decoding apparatus 2000 may be a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP), or a PlayStation Portable (PSP). ), A communication device such as a communication modem for communicating with various devices or a wired / wireless communication network, a memory for storing various programs and data for decoding an image, and executing a program. Means a variety of devices including a microprocessor for operation and control.

복호화부(2010)는 비트스트림을 복호화하여 잔차 블록을 추출한다. 즉, 복호화부(2010)는 영상 부호화 장치(100)에 의해 부호화된 영상인 비트스트림을 복호화 하여 영상의 현재 블록에 대한 화소 정보를 포함하고 있는 잔차 블록과 움직임 벡터 및 회전 정보를 추출한다.The decoder 2010 extracts a residual block by decoding the bitstream. That is, the decoder 2010 decodes the bitstream, which is the image encoded by the image encoding apparatus 100, to extract the residual block, the motion vector, and the rotation information including the pixel information of the current block of the image.

역양자화부(2020)는 복호화부(2010)에 의해 추출된 잔차 블록을 역 양자화하고, 역변환부(2030)는 역 양자화된 잔차 블록을 역 변환한다. 여기서, 역 양자화와 역 변환은 각각 도 1을 통해 전술한 역 양자화와 역 변환과 같은 방식으로 역 양자와 역 변환될 수 있다.The inverse quantizer 2020 inversely quantizes the residual block extracted by the decoder 2010, and the inverse transformer 2030 inversely transforms the inverse quantized residual block. Here, the inverse quantization and the inverse transform may be inversely transformed with the inverse quantization in the same manner as the inverse quantization and inverse transformation described above with reference to FIG. 1.

예측부(2040)는 복호화부(2010)에서 추출한 움직임 벡터 및 회전 정보를 이용하여 영상의 현재 블록의 회전 움직임을 포함하는 움직임을 보상함으로써 현재 블록을 예측하여 예측 블록을 생성한다.The prediction unit 2040 generates a prediction block by predicting the current block by compensating for the motion including the rotation movement of the current block of the image by using the motion vector and the rotation information extracted by the decoder 2010.

가산부(2050)는 역변환부(2030)에서 역 변환된 잔차 블록에 예측부(2040)에 의해 예측된 예측 블록을 가산하여 현재 블록을 복원한다.The adder 2050 adds the prediction block predicted by the predictor 2040 to the residual block inversely transformed by the inverse transform unit 2030 to restore the current block.

디블로킹 필터부(2060)는 가산부(2050) 의해 복원된 현재 블록을 디블로킹 필터링하되, 현재 블록의 경계를 기준으로 기 설정된 복수의 방향별로 필터링할 화소들을 선택하고, 그 선택된 화소들간의 화소값의 관계에 따라 해당 방향에 대한 필터링 여부를 결정하고, 그 결정된 필터링 여부에 따라 해당 방향의 선택된 화소들에 대해 필터링을 수행한다. 디블로킹 필터부(2060)는 선택된 화소들간의 화소값의 관계가, 해당 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 해당 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 해당 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 해당 방향을 필터링 방향으로 결정한다. 디블로킹 필터부(2060)는 결정된 필터링 방향이 다수일 경우, 선택된 화소들간의 화소값의 변화량에 따라 다수의 필터링 방향 중 하나 이상 선택하여 필터링을 수행할 수 있다. 이와 같은 디블록킹 필터부(2060)는 일 예로 도 2의 디블록킹 필터링 장치(190)와 동일하게 구성된다.The deblocking filter unit 2060 deblocks and filters the current block restored by the adder 2050, selects pixels to be filtered in a plurality of preset directions based on the boundary of the current block, and selects pixels between the selected pixels. The filtering of the corresponding direction is determined according to the relationship between the values, and filtering is performed on the pixels selected in the corresponding direction according to the determined filtering. The deblocking filter unit 2060 has an absolute value of a difference in pixel values between the first pixels facing each other based on a corresponding boundary, and a second pixel and a first pixel on one side based on the corresponding boundary. If the absolute value of the pixel value difference between the first pixel and the absolute value of the pixel value difference between the second pixel and the first pixel on the basis of the corresponding boundary satisfy each of the conditions smaller than the preset thresholds, the corresponding direction is filtered. Decide on direction. When there are a plurality of determined filtering directions, the deblocking filter unit 2060 may perform filtering by selecting one or more of the plurality of filtering directions according to the amount of change in pixel values between the selected pixels. The deblocking filter 2060 is configured in the same way as the deblocking filtering device 190 of FIG. 2, for example.

가산부(2050)에 의해 복원된 현재 블록은 픽처 단위로 결합되어 복원 영상으로 출력되고, 디블로킹 필터부(2060)에 의해 디블로킹 필터링된 현재 블록은 예측부(2040)에서 다음 픽처를 예측할 때 사용되는 참조 픽처로서 저장될 수 있다.The current block reconstructed by the adder 2050 is combined in picture units and output as a reconstructed image, and the current block deblocked and filtered by the deblocking filter 2060 when the predictor 2040 predicts the next picture. It may be stored as a reference picture used.

본 발명의 실시예에 따른 적응적 디블록킹 필터링 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로써 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. The adaptive deblocking filtering method according to an embodiment of the present invention can be implemented as computer readable codes on a computer readable recording medium. Computer-readable recording media include all kinds of recording devices that store data that can be read by a computer system. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like, which are also implemented in the form of carrier waves (for example, transmission over the Internet). Include. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것이다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.In the above description, all elements constituting the embodiments of the present invention are described as being operated in combination, and the present invention is necessarily limited to these embodiments. In other words, within the scope of the present invention, all of the components may be selectively operated in combination with one or more. In addition, although all of the components may be implemented in one independent hardware, each or all of the components may be selectively combined to perform some or all functions combined in one or a plurality of hardware. It may be implemented as a computer program having a. Codes and code segments constituting the computer program may be easily inferred by those skilled in the art. Such a computer program may be stored in a computer readable storage medium and read and executed by a computer, thereby implementing embodiments of the present invention. The storage medium of the computer program may include a magnetic recording medium, an optical recording medium, a carrier wave medium, and the like.

또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, the terms "comprise", "comprise" or "having" described above mean that the corresponding component may be included, unless otherwise stated, and thus excludes other components. It should be construed that it may further include other components instead. All terms, including technical and scientific terms, have the same meanings as commonly understood by one of ordinary skill in the art unless otherwise defined. Terms commonly used, such as terms defined in a dictionary, should be interpreted to coincide with the contextual meaning of the related art, and shall not be construed in an ideal or excessively formal sense unless explicitly defined in the present invention.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질 적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.

이상 설명한 바와 같이, 본 발명은 동영상 부호화 및 복호화 기술 분야에 적용되어, 수직 수평 방향 뿐만 아니라 그 밖의 다수의 방향에 대해서도 화소 단위로 디블록킹 필터를 적용할 수 있는 방법을 제공함으로써, 다수의 사선 방향에 대한 에지로 인하여 생기는 사선 방향의 불연속 성에 의한 블록 왜곡 현상을 효과적으로 제거하여 화질을 향상시키는 효과를 발생하는 매우 유용한 발명이다.As described above, the present invention is applied to a video encoding and decoding technique, and provides a method for applying a deblocking filter on a pixel-by-pixel basis for not only a vertical horizontal direction but also a plurality of other directions, thereby providing a plurality of diagonal directions. It is a very useful invention that effectively removes the block distortion caused by the discontinuity in the diagonal direction caused by the edges to improve the image quality.

도 1은 본 발명의 일 실시예에 따른 동영상 부호화 장치의 블록도,1 is a block diagram of a video encoding apparatus according to an embodiment of the present invention;

도 2는 본 발명의 일 실시예에 따른 적응적 디블록킹 필터링 장치의 블록도,2 is a block diagram of an adaptive deblocking filtering device according to an embodiment of the present invention;

도 3은 본 발명의 실시예에 따른 필터링 방향의 일 예를 설명하는 도면,3 is a view for explaining an example of a filtering direction according to an embodiment of the present invention;

도 4는 도 3의 필터링 방향에 따라 선택된 화소의 예를 설명하는 도면,4 is a view for explaining an example of a pixel selected according to the filtering direction of FIG. 3;

도 5은 본 발명의 실시예에 따른 필터링 방향의 다른 예를 설명하는 도면,5 is a view for explaining another example of a filtering direction according to an embodiment of the present invention;

도 6 내지 도 14는 도 5의 필터링 방향에 따라 선택된 화소의 예를 설명하는 도면,6 to 14 illustrate examples of pixels selected according to the filtering direction of FIG. 5;

도 15는 본 발명의 일 실시예에 따른 적응적 디블록킹 필터링 방법의 흐름도,15 is a flowchart of an adaptive deblocking filtering method according to an embodiment of the present invention;

도 16 및 도 17은 매크로 블록의 수직 및 수평 방향의 경계를 나타내는 도면,16 and 17 are views showing the boundaries of the macro block in the vertical and horizontal directions,

도 18은 수직 및 수평 방향 블록 경계인 경우에 수평 및 수직 방향 필터링할 화소의 예를 나타낸 도면,18 illustrates an example of pixels to be horizontally and vertically filtered in the case of vertical and horizontal block boundaries;

도 19는 대각선 방향의 에지가 존재할 경우 (a)는 수직 방향의 필터링 시의 예를 나타내고, (b)는 대각선 방향 필터링 시의 예를 나타낸 도면,19 is a diagram illustrating an example of filtering in a vertical direction when an edge in a diagonal direction exists, and (b) illustrates an example of filtering in a diagonal direction;

도 20은 본 발명의 일 실시예에 따른 동영상 복호화 장치의 블록도.20 is a block diagram of a video decoding apparatus according to an embodiment of the present invention.

< 도면의 주요 부분에 대한 부호의 설명 ><Description of Symbols for Main Parts of Drawings>

100: 부호화 장치(또는 부호기라 칭함)100: encoding device (or coder)

110: 예측부 120: 감산부110: prediction unit 120: subtraction unit

130: 변환부 140: 양자화부130: transform unit 140: quantization unit

150: 부호화부 160: 역양자화부150: encoding unit 160: inverse quantization unit

170: 역변환부 180: 가산부170: inverse transform unit 180: adder

190: 디블록킹 필터부, 적응적 디블록킹 필터링 장치190: deblocking filter unit, adaptive deblocking filtering device

191: 경계 세기 결정부 193: 방향 선택부191: boundary strength determination unit 193: direction selection unit

195: 화소 선택부 197: 필터링 결정부195: pixel selection unit 197: filtering determination unit

199: 필터링부199: filtering unit

2000: 복호화 장치(또는 복호기라 칭함)2000: decoding device (or decoder)

2010: 복호화부 2020: 역양자화부2010: decryption unit 2020: inverse quantization unit

2030: 역변환부 2040: 예측부2030: inverse transform unit 2040: prediction unit

2050: 가산부 2060: 디블록킹 필터부2050: adder 2060: deblocking filter part

Claims (20)

현재 블록의 서브 블록간의 경계의 세기를 결정하는 경계 세기 결정부;A boundary strength determiner for determining the strength of the boundary between sub-blocks of the current block; 상기 경계를 기준으로 기 설정된 복수의 방향 중 하나씩 순차적으로 선택하는 방향 선택부;A direction selector which sequentially selects one of a plurality of preset directions based on the boundary; 상기 선택된 방향에 근거하여 필터링할 화소들을 선택하는 화소 선택부;A pixel selector which selects pixels to filter based on the selected direction; 상기 선택된 화소들간의 화소값의 관계에 따라 상기 선택된 방향에 대한 필터링 여부를 결정하는 필터링 결정부;A filtering determiner configured to determine whether to filter the selected direction according to a relationship between pixel values between the selected pixels; 상기 결정된 필터링 여부에 따라 상기 선택된 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 필터링부A filtering unit that performs filtering on the selected pixels in the selected direction according to the determined filtering 를 포함하는 것을 특징으로 하는 적응적 디블록킹 필터링 장치.Adaptive deblocking filtering device comprising a. 제 1 항에 있어서,The method of claim 1, 상기 필터링 결정부는, 상기 선택된 화소들간의 화소값의 관계가, 상기 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 상기 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 상기 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 상기 선택된 방향을 필터링 방향으로 결정하는 것을 특징으로 하는 적응적 디블록킹 필터링 장치.The filtering determiner may include an absolute value of a difference between pixel values between first pixels facing the boundary, and a second pixel and a first pixel on one side of the boundary based on the boundary. If the absolute value of the pixel value difference between the absolute value and the absolute value of the pixel value difference between the second pixel and the first pixel on the basis of the boundary are respectively smaller than the preset thresholds, the selected direction is filtered. Adaptive deblocking filtering device, characterized in that determined by. 제 2 항에 있어서,The method of claim 2, 상기 필터링부는, 상기 결정된 필터링 방향이 다수일 경우, 상기 선택된 화소들간의 화소값의 변화량에 따라 다수의 필터링 방향 중 하나 이상 선택하여 필터링을 수행하는 것을 특징으로 하는 적응적 디블록킹 필터링 장치.And the filtering unit performs filtering by selecting one or more of a plurality of filtering directions according to the amount of change in pixel values between the selected pixels when the determined filtering directions are plural. 제 1 항에 있어서,The method of claim 1, 상기 기 설정된 복수의 방향은 45도, 90도, 및 135도를 포함하는 것을 특징으로 하는 적응적 디블록킹 필터링 장치.The predetermined plurality of directions include 45 degrees, 90 degrees, and 135 degrees. 제 1 항에 있어서,The method of claim 1, 상기 기 설정된 복수의 방향은 45도, 56.25도, 67.5도, 78.75도, 90도, 101.25도, 112.5도, 123.75도 및 135도를 포함하는 것을 특징으로 하는 적응적 디블록킹 필터링 장치.The predetermined plurality of directions include 45 degrees, 56.25 degrees, 67.5 degrees, 78.75 degrees, 90 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees and 135 degrees. 현재 블록의 서브 블록간의 경계의 세기를 결정하는 경계 세기 결정 단계;A boundary strength determining step of determining the strength of a boundary between sub-blocks of the current block; 상기 경계를 기준으로 기 설정된 복수의 방향 중 하나씩 순차적으로 선택하는 방향 선택 단계;A direction selection step of sequentially selecting one of a plurality of preset directions based on the boundary; 상기 선택된 방향에 근거하여 필터링할 화소들을 선택하는 화소 선택 단계;Selecting a pixel to filter based on the selected direction; 상기 선택된 화소들간의 화소값의 관계에 따라 상기 선택된 방향에 대한 필터링 여부를 결정하는 필터링 결정 단계;A filtering determination step of determining whether to filter in the selected direction according to the relationship of pixel values between the selected pixels; 상기 결정된 필터링 여부에 따라 상기 선택된 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 필터링 단계A filtering step of performing filtering on the selected pixels in the selected direction according to the determined filtering 를 포함하는 것을 특징으로 하는 적응적 디블록킹 필터링 방법.Adaptive deblocking filtering method comprising a. 제 6 항에 있어서,The method of claim 6, 상기 필터링 결정 단계는, 상기 선택된 화소들간의 화소값의 관계가, 상기 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 상기 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 상기 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 상기 선택된 방향을 필터링 방향으로 결정하는 것을 특징으로 하는 적응적 디블록킹 필터링 방법.In the filtering determining step, the relationship between the pixel values between the selected pixels may include an absolute value of a difference between pixel values between the first pixels facing the boundary, and a second pixel and a first pixel on the one side of the boundary based on the boundary. Filtering the selected direction when the absolute value of the pixel value difference between the pixels and the absolute value of the pixel value difference between the second pixel and the first pixel on the basis of the boundary are smaller than preset thresholds, respectively Adaptive deblocking filtering method, characterized in that determined in the direction. 제 7 항에 있어서,The method of claim 7, wherein 상기 필터링 단계는, 상기 결정된 필터링 방향이 다수일 경우, 상기 선택된 화소들간의 화소값의 변화량에 따라 다수의 필터링 방향 중 하나 이상 선택하여 필터링을 수행하는 것을 특징으로 하는 적응적 디블록킹 필터링 방법.The filtering step, if the determined filtering direction is a plurality, adaptive deblocking filtering method characterized in that to perform filtering by selecting one or more of the plurality of filtering directions according to the amount of change in the pixel value between the selected pixels. 제 6 항에 있어서,The method of claim 6, 상기 기 설정된 복수의 방향은 45도, 90도, 및 135도를 포함하는 것을 특징으로 하는 적응적 디블록킹 필터링 방법.The predetermined plurality of directions include 45 degrees, 90 degrees, and 135 degrees. 제 6 항에 있어서,The method of claim 6, 상기 기 설정된 복수의 방향은 45도, 56.25도, 67.5도, 78.75도, 90도, 101.25도, 112.5도, 123.75도 및 135도를 포함하는 것을 특징으로 하는 적응적 디블록킹 필터링 방법.The predetermined plurality of directions include 45 degrees, 56.25 degrees, 67.5 degrees, 78.75 degrees, 90 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees and 135 degrees. 영상의 현재 블록을 예측하여 예측 블록을 생성하는 예측부;A prediction unit for predicting a current block of an image and generating a prediction block; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부;A subtraction unit for generating a residual block by subtracting the prediction block from the current block; 상기 잔차 블록을 주파수 영역으로 변환하는 변환부;A transformer for converting the residual block into a frequency domain; 상기 변환된 잔차 블록을 양자화하는 양자화부; A quantizer for quantizing the transformed residual block; 상기 양자화된 잔차 블록을 부호화하는 부호화부;An encoder which encodes the quantized residual block; 상기 잔차 블록을 역 양자화하는 역양자화부;An inverse quantizer for inversely quantizing the residual block; 상기 역 양자화된 잔차 블록을 시간축상의 화소 신호를 갖는 잔차 블록으로 역변환하는 역변환부;An inverse transform unit for inversely transforming the inverse quantized residual block into a residual block having a pixel signal on a time axis; 상기 역변환된 잔차 블록에 상기 예측 블록을 가산하여 현재 블록을 복원하는 가산부;An adder configured to add the prediction block to the inverse transformed residual block to restore a current block; 상기 복원된 현재 블록을 디블로킹 필터링하되, 상기 복원된 현재 블록의 경계를 기준으로 기 설정된 복수의 방향별로 필터링할 화소들을 선택하고, 그 선택된 화소들간의 화소값의 관계에 따라 해당 방향에 대한 필터링 여부를 결정하고, 그 결정된 필터링 여부에 따라 상기 해당 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 디블로킹 필터부Deblocking and filtering the reconstructed current block, selecting pixels to be filtered for a plurality of preset directions based on the boundary of the reconstructed current block, and filtering for the corresponding direction according to the relationship of pixel values between the selected pixels. A deblocking filter unit configured to determine whether or not to filter the selected pixels in the corresponding direction according to the determined filtering 를 포함하는 것을 특징으로 하는 동영상 부호화 장치.Video encoding apparatus comprising a. 제 11 항에 있어서,The method of claim 11, 상기 디블로킹 필터부는, 상기 선택된 화소들간의 화소값의 관계가, 상기 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 상기 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 상기 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 상기 해당 방향을 필터링 방향으로 결정하는 것을 특징으로 하는 동영상 부호화 장치.The deblocking filter may include an absolute value of a pixel value difference between first pixels facing the boundary with respect to the pixel value between the selected pixels, and a second pixel and a first pixel on one side based on the boundary. Filtering the corresponding direction when the absolute value of the pixel value difference between the pixels and the absolute value of the pixel value difference between the second pixel and the first pixel on the basis of the boundary are smaller than preset thresholds, respectively. Video encoding apparatus, characterized in that determined in the direction. 제 12 항에 있어서, The method of claim 12, 상기 디블로킹 필터부는, 상기 결정된 필터링 방향이 다수일 경우, 상기 선택된 화소들간의 화소값의 변화량에 따라 다수의 필터링 방향 중 하나 이상 선택하여 필터링을 수행하는 것을 특징으로 하는 동영상 부호화 장치.The deblocking filter is configured to perform filtering by selecting one or more of a plurality of filtering directions according to a change amount of pixel values between the selected pixels when the determined filtering directions are multiple. 비트스트림을 복호화하여 잔차 블록을 추출하는 복호화부;A decoder which extracts a residual block by decoding the bitstream; 상기 잔차 블록을 역 양자화하는 역양자화부;An inverse quantizer for inversely quantizing the residual block; 상기 역 양자화된 잔차 블록을 역 변환하는 역변환부;An inverse transform unit for inversely transforming the inverse quantized residual block; 현재 블록을 예측하여 예측 블록을 생성하는 예측부;A prediction unit for predicting a current block to generate a prediction block; 상기 역 변환된 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산부; 및An adder configured to add the inverse transformed residual block and the prediction block to restore the current block; And 상기 가산부 의해 복원된 상기 현재 블록을 디블로킹 필터링하되, 상기 현재 블록의 경계를 기준으로 기 설정된 복수의 방향별로 필터링할 화소들을 선택하고, 그 선택된 화소들간의 화소값의 관계에 따라 해당 방향에 대한 필터링 여부를 결정하고, 그 결정된 필터링 여부에 따라 상기 해당 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 디블로킹 필터부Deblocking and filtering the current block reconstructed by the adder, selecting pixels to be filtered in a plurality of preset directions based on the boundary of the current block, and selecting the pixels to be filtered in the corresponding direction according to the relationship of pixel values between the selected pixels. A deblocking filter unit configured to determine whether to perform filtering on the selected pixels and to perform filtering on the selected pixels in the corresponding direction according to the determined filtering. 를 포함하는 것을 특징으로 하는 동영상 복호화 장치.Video decoding apparatus comprising a. 제 14 항에 있어서,The method of claim 14, 상기 디블로킹 필터부는 상기 선택된 화소들간의 화소값의 관계가, 상기 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 상기 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 상기 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 상기 해당 방향을 필터링 방향으로 결정하는 것을 특징으로 하는 동영상 복호화 장치.The deblocking filter unit may have a relationship between pixel values between the selected pixels, an absolute value of pixel value differences between first pixels facing the boundary, and a second pixel and a first pixel on one side based on the boundary. If the absolute value of the pixel value difference between the absolute value and the absolute value of the pixel value difference between the second pixel and the first pixel on the basis of the boundary are respectively smaller than preset thresholds, the corresponding direction is filtered. And a video decoding apparatus. 제 15 항에 있어서,The method of claim 15, 상기 디블로킹 필터부는, 상기 결정된 필터링 방향이 다수일 경우, 상기 선 택된 화소들간의 화소값의 변화량에 따라 다수의 필터링 방향 중 하나 이상 선택하여 필터링을 수행하는 것을 특징으로 하는 동영상 복호화 장치.The deblocking filter module, when the determined filtering directions are plural, selects one or more of the plurality of filtering directions according to the amount of change in the pixel value between the selected pixels to perform filtering. 현재 블록의 서브 블록간의 경계의 세기를 결정하는 경계 세기 결정 기능;A boundary strength determination function for determining the strength of a boundary between sub-blocks of the current block; 상기 경계를 기준으로 기 설정된 복수의 방향 중 하나씩 순차적으로 선택하는 방향 선택 기능;A direction selection function for sequentially selecting one of a plurality of preset directions based on the boundary; 상기 선택된 방향에 근거하여 필터링할 화소들을 선택하는 화소 선택 기능;A pixel selection function for selecting pixels to be filtered based on the selected direction; 상기 선택된 화소들간의 화소값의 관계에 따라 상기 선택된 방향에 대한 필터링 여부를 결정하는 필터링 결정 기능;A filtering determination function for determining whether to filter in the selected direction according to a relationship of pixel values between the selected pixels; 상기 결정된 필터링 여부에 따라 상기 선택된 방향의 상기 선택된 화소들에 대해 필터링을 수행하는 필터링 기능A filtering function for performing filtering on the selected pixels in the selected direction according to the determined filtering 을 포함하는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.And a computer readable recording medium having recorded thereon a program. 제 17 항에 있어서,The method of claim 17, 상기 필터링 결정 기능은, 상기 선택된 화소들간의 화소값의 관계가, 상기 경계를 기준으로 마주하는 첫 번째 화소들간의 화소값 차이의 절대값, 상기 경계를 기준으로 일 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값, 및 상기 경계를 기준으로 타 측의 두 번째 화소와 첫 번째 화소간의 화소값 차이의 절대값이 각각 기 설정된 문턱치들보다 작은 조건을 만족하면, 상기 선택된 방향을 필 터링 방향으로 결정하는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.The filtering determination function may include an absolute value of a difference of pixel values between first pixels facing the boundary, and a second pixel and a first pixel on one side of the boundary based on the boundary. If the absolute value of the pixel value difference between the pixels and the absolute value of the pixel value difference between the second pixel and the first pixel on the other side with respect to the boundary are respectively smaller than the preset thresholds, the selected direction is required. A computer-readable recording medium having a program recorded thereon, wherein the recording medium is determined in a turning direction. 제 18 항에 있어서,The method of claim 18, 상기 필터링 기능은, 상기 결정된 필터링 방향이 다수일 경우, 상기 선택된 화소들간의 화소값의 변화량에 따라 다수의 필터링 방향 중 하나 이상 선택하여 필터링을 수행하는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.The filtering function may be configured to perform filtering by selecting one or more of the plurality of filtering directions according to the amount of change in pixel values between the selected pixels when the determined filtering directions are plural. Recording media. 제 17 항에 있어서,The method of claim 17, 상기 기 설정된 복수의 방향은 45도, 56.25도, 67.5도, 78.75도, 90도, 101.25도, 112.5도, 123.75도 및 135도를 포함하는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.The preset plurality of directions include 45 degrees, 56.25 degrees, 67.5 degrees, 78.75 degrees, 90 degrees, 101.25 degrees, 112.5 degrees, 123.75 degrees, and 135 degrees. .
KR1020080105062A 2008-10-27 2008-10-27 / Video encoding/decoding apparatus Adaptive Deblocking filter and deblocing filtering method and Recording Medium therefor KR101597253B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020080105062A KR101597253B1 (en) 2008-10-27 2008-10-27 / Video encoding/decoding apparatus Adaptive Deblocking filter and deblocing filtering method and Recording Medium therefor
US13/126,144 US9596485B2 (en) 2008-10-27 2009-10-22 Motion picture encoding/decoding apparatus, adaptive deblocking filtering apparatus and filtering method for same, and recording medium
PCT/KR2009/006127 WO2010050699A2 (en) 2008-10-27 2009-10-22 Motion picture encoding/decoding apparatus, adaptive deblocking filtering apparatus and filtering method for same, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080105062A KR101597253B1 (en) 2008-10-27 2008-10-27 / Video encoding/decoding apparatus Adaptive Deblocking filter and deblocing filtering method and Recording Medium therefor

Publications (2)

Publication Number Publication Date
KR20100046289A true KR20100046289A (en) 2010-05-07
KR101597253B1 KR101597253B1 (en) 2016-02-24

Family

ID=42273569

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080105062A KR101597253B1 (en) 2008-10-27 2008-10-27 / Video encoding/decoding apparatus Adaptive Deblocking filter and deblocing filtering method and Recording Medium therefor

Country Status (1)

Country Link
KR (1) KR101597253B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9479791B2 (en) 2010-05-12 2016-10-25 Sk Telecom Co., Ltd. Image-filtering method and apparatus, and encoding/decoding method and apparatus using same
KR102272660B1 (en) * 2019-12-30 2021-07-02 이화여자대학교 산학협력단 Adaptive deblocking filter control method for 360 degree immersive video and decoder

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040068257A (en) * 2001-12-17 2004-07-30 마이크로소프트 코포레이션 Skip macroblock coding
KR20050091270A (en) * 2004-03-11 2005-09-15 학교법인 대양학원 Filter for removing blocking effect and filtering method thereof
KR20070014926A (en) * 2005-07-29 2007-02-01 삼성전자주식회사 Deblocking filtering method considering intra bl mode, and video encoder/decoder based on multi-layer using the method
KR20090046814A (en) * 2006-08-02 2009-05-11 톰슨 라이센싱 Methods and apparatus for adaptive geometric partitioning for video encoding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040068257A (en) * 2001-12-17 2004-07-30 마이크로소프트 코포레이션 Skip macroblock coding
KR20050091270A (en) * 2004-03-11 2005-09-15 학교법인 대양학원 Filter for removing blocking effect and filtering method thereof
KR20070014926A (en) * 2005-07-29 2007-02-01 삼성전자주식회사 Deblocking filtering method considering intra bl mode, and video encoder/decoder based on multi-layer using the method
KR20090046814A (en) * 2006-08-02 2009-05-11 톰슨 라이센싱 Methods and apparatus for adaptive geometric partitioning for video encoding

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9479791B2 (en) 2010-05-12 2016-10-25 Sk Telecom Co., Ltd. Image-filtering method and apparatus, and encoding/decoding method and apparatus using same
US9532065B2 (en) 2010-05-12 2016-12-27 Sk Telecom Co., Ltd. Image-filtering method and apparatus, and encoding/decoding method and apparatus using same
US9787988B2 (en) 2010-05-12 2017-10-10 Sk Telecom Co., Ltd. Image-filtering method and apparatus, and encoding/decoding method and apparatus using same
KR102272660B1 (en) * 2019-12-30 2021-07-02 이화여자대학교 산학협력단 Adaptive deblocking filter control method for 360 degree immersive video and decoder

Also Published As

Publication number Publication date
KR101597253B1 (en) 2016-02-24

Similar Documents

Publication Publication Date Title
KR101590500B1 (en) / Video encoding/decoding apparatus Deblocking filter and deblocing filtering method based intra prediction direction and Recording Medium therefor
US10469840B2 (en) Motion picture encoding apparatus and method thereof
US9596485B2 (en) Motion picture encoding/decoding apparatus, adaptive deblocking filtering apparatus and filtering method for same, and recording medium
KR101432775B1 (en) Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock
KR101538704B1 (en) Method and apparatus for coding and decoding using adaptive interpolation filters
KR20090097688A (en) Method and apparatus of encoding/decoding image based on intra prediction
KR20090095317A (en) Method and apparatus for encoding and decoding image
KR20130011878A (en) Image encoding/decoding method and apparatus using deblocking filtering
JP2008503177A (en) Method for color difference deblocking
KR101597253B1 (en) / Video encoding/decoding apparatus Adaptive Deblocking filter and deblocing filtering method and Recording Medium therefor
KR101997599B1 (en) Method and Apparatus for Image Encoding/Decoding using Efficient Non-fixed Quantization
KR101943425B1 (en) Method and Apparatus for Image Encoding/Decoding using Efficient Non-fixed Quantization
KR101534050B1 (en) Video encoding/decoding apparatus, Deblocking filter and deblocing filtering method, and Recording Medium therefor
KR101537767B1 (en) Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock
KR101483495B1 (en) Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock
JP5814191B2 (en) Deblocking processing method, deblocking processing apparatus, program, and recording medium
KR101379189B1 (en) Video Coding Method and Apparatus by Using Filtering Motion Compensation Frame
KR101534014B1 (en) Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock
KR101347272B1 (en) Method and apparatus for inter prediction
KR101464949B1 (en) Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock
KR101464944B1 (en) Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock
JP5728330B2 (en) Moving picture encoding apparatus, moving picture decoding apparatus, moving picture encoding method, moving picture decoding method, and program
KR101802304B1 (en) Methods of encoding using hadamard transform and apparatuses using the same
KR20110073154A (en) Apparatus and method for video encoding/decoding
KR20190065620A (en) Video coding method and apparatus using bilateral filter

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190131

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191216

Year of fee payment: 5