KR100968027B1 - Variable block-based method and apparatus for filtering of deblocking type, and deblocking filter applied to the same - Google Patents
Variable block-based method and apparatus for filtering of deblocking type, and deblocking filter applied to the same Download PDFInfo
- Publication number
- KR100968027B1 KR100968027B1 KR1020070063866A KR20070063866A KR100968027B1 KR 100968027 B1 KR100968027 B1 KR 100968027B1 KR 1020070063866 A KR1020070063866 A KR 1020070063866A KR 20070063866 A KR20070063866 A KR 20070063866A KR 100968027 B1 KR100968027 B1 KR 100968027B1
- Authority
- KR
- South Korea
- Prior art keywords
- filtering
- block
- variable block
- deblocking
- variable
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods 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
본 발명은 가변블록 기반의 디블록킹 필터링 방법 및 장치와, 이에 적용되는 디블록킹 필터를 개시한다. 본 발명에 따른 가변블록 기반의 디블록킹 필터는, 영상프레임에 대한 가변블록 크기 움직임 보상을 통해 형성되는 가변블록 정보를 토대로 블록경계를 기점으로 하여 가변블록 및 인접블록에 대한 이미지 특성을 판별하여 필터링 실행하기 위한 디블록킹 모드 및 필터링 대상영역을 설정한 것을 기초로 가변블록 단위의 필터링을 수평방향 또는 수직방향으로 실행하는 것을 특징으로 한다. 따라서, 본 발명은 가변블록 크기의 움직임 보상을 통해 형성되는 가변블록 정보를 이용하여 가변블록 단위로 디블록킹 필터링을 선택적으로 실행함으로써, 기존의 line by line의 화소 단위로 필터링 실행하는 것보다 높은 성능 구현을 이루었으며, 필터링 적용을 위한 영상의 특성을 별도로 분석할 필요없이 영상특성에 부합하여 평탄하거나 단순한 영상영역인 경우에는 상대적으로 강한 필터링을 실행함에 따라 블록화 현상을 감소시키고, 복잡한 영상 영역에서는 약한 필터링을 실행하여 계산속도를 줄임에 따라 전체적으로 화질저하 없이 필터링의 속도를 향상시킬 수 있다.The present invention discloses a variable block-based deblocking filtering method and apparatus, and a deblocking filter applied thereto. In the variable block based deblocking filter according to the present invention, filtering is performed by determining image characteristics of a variable block and an adjacent block based on a block boundary based on variable block information formed through variable block size motion compensation for an image frame. Based on the setting of the deblocking mode and the filtering target region for execution, the filtering in the variable block unit may be performed in the horizontal direction or the vertical direction. Accordingly, the present invention selectively performs deblocking filtering on a variable block basis by using variable block information formed through motion compensation of a variable block size, thereby performing higher filtering performance on a pixel basis of a conventional line by line. In the case of a flat or simple image area that meets the characteristics of the image, the blocking effect is reduced by performing a relatively strong filtering, and weak in a complex image area. By performing filtering to reduce the computation speed, the overall filtering speed can be improved without degrading the overall quality.
움직임 보상, 가변블록, H.264/AVC, 디블록킹 필터 Motion Compensation, Variable Block, H.264 / AVC, Deblocking Filter
Description
도 1은 종래의 기술에 따른 디블록킹 필터를 도시한 구성도,1 is a block diagram showing a deblocking filter according to the prior art,
도 2는 본 발명의 일실시 예에 따른 가변블록 기반의 디블록킹 필터링 장치의 구성도,2 is a block diagram of a deblocking filtering apparatus based on a variable block according to an embodiment of the present invention;
도 3은 도 2에 도시된 디블록킹 필터의 구성도,3 is a block diagram of the deblocking filter shown in FIG.
도 4는 도 3에 도시된 디블록킹 필터가 제 1 디블록킹 모드를 설정하는 것에 대한 개념도,4 is a conceptual diagram for setting the first deblocking mode by the deblocking filter shown in FIG. 3;
도 5는 도 3에 도시된 디블록킹 필터가 제 2 디블록킹 모드 또는 제 3 디블록킹 모드를 설정하는 것에 대한 개념도,5 is a conceptual diagram for setting the second deblocking mode or the third deblocking mode by the deblocking filter shown in FIG. 3;
도 6은 도 3에 도시된 디블록킹 필터가 제 4 디블록킹 모드를 설정하는 것에 대한 개념도,6 is a conceptual diagram for setting the fourth deblocking mode by the deblocking filter shown in FIG. 3;
도 7은 도 3에 도시된 디블록킹 필터를 통해 영상프레임에 각각의 디블록킹 모드를 설정하여 나타낸 도면,FIG. 7 is a diagram illustrating each deblocking mode set for an image frame through the deblocking filter shown in FIG. 3;
도 8은 도 3에 도시된 디블록킹 필터의 성능을 측정하여 형성한 실험 데이터를 그래프로 나타낸 도면,8 is a graph showing experimental data formed by measuring the performance of the deblocking filter shown in FIG. 3;
도 9는 도 8에 도시된 그래프를 해석하여 나타낸 도표, 및FIG. 9 is a table in which the graph illustrated in FIG. 8 is interpreted, and
도 10은 도 3에 도시된 디블록킹 필터의 동작과정을 도시한 순서도이다.FIG. 10 is a flowchart illustrating an operation of the deblocking filter illustrated in FIG. 3.
< 도면의 주요 부분에 대한 부호의 설명 ><Description of Symbols for Main Parts of Drawings>
100 : 디블록킹 필터링 장치 110 : 제 1 처리수단Deblocking
120 : 제 2 처리수단, 디블록킹 필터 121 : 이미지 특성분석부120: second processing means, deblocking filter 121: image characteristic analyzer
122 : 필터모드 선택부 123 : 필터 실행부122: filter mode selection unit 123: filter execution unit
130 : 제 3 처리수단 140 : 프레임 메모리130: third processing means 140: frame memory
본 발명은 디블록킹 필터(Deblocking Filter)에 관한 것으로, 더욱 상세하게는 가변블록 크기의 움직임 보상을 통해 형성되는 가변블록 정보를 이용하여 가변블록 단위로 디블록킹 필터링을 선택적으로 실행하기 위한 가변블록 기반의 디블록킹 필터링 방법 및 장치와, 이에 적용되는 디블록킹 필터에 관한 것이다.The present invention relates to a deblocking filter, and more particularly, based on a variable block for selectively performing deblocking filtering in units of variable blocks using variable block information formed through motion compensation of a variable block size. A deblocking filtering method and apparatus, and a deblocking filter applied thereto.
대부분의 영상처리 시스템은 표준화된 비디오 코덱으로 압축된 영상 데이터들을 이용한다. 일반적으로 사용되는 비디오 코덱으로는 국제전기통신연합(ITU: International Telecommunication Union에서 권고하는 H.261, H.262, H.263 등과 동화상 전문가 그룹(MPEG: Motion Picture Experts Group)에서 권고하는 MPEG-1, MPEG-2, MPEG-4의 코덱 표준이 있다. 그리고, 최근에는 더 높은 압축률을 구현할 수 있는 H.264 비디오 코덱에 대한 연구 및 표준화 작업이 활발히 진행되고 있다.Most image processing systems use image data compressed with a standardized video codec. Commonly used video codecs include H.261, H.262, and H.263, as recommended by the International Telecommunication Union (ITU), and MPEG-1, as recommended by the Motion Picture Experts Group (MPEG). There is a codec standard of MPEG-2 and MPEG-4, and recently, research and standardization of H.264 video codec that can realize higher compression rate has been actively conducted.
이와 같이 코딩된 영상 데이터들은 영상처리 장치에서 별도의 디코딩 과정을 통해 원래의 데이터로 복원되어 화면에 디스플레이된다. 또한, 일반적인 비디오 디코더 시스템은 구문 분석기와 코딩된 영상 데이터들을 디코딩하기 위한 복수의 하드웨어 모듈들 및 메모리와 주변장치들로 구성된다. 그리고, 이들 각각은 버스를 통해 상호 데이터 전송을 수행한다. 디코딩을 수행하는 하드웨어 모듈에는 엔트로피 디코더, 역변환기, 예측기 및 디블록킹 필터들이 있다. 코딩된 영상 데이터들은 각 하드웨어 모듈들에 의해 순서대로 처리되어 원래의 데이터로 복원된다.The coded image data is restored to the original data and displayed on the screen through a separate decoding process in the image processing apparatus. In addition, a general video decoder system is composed of a parser and a plurality of hardware modules, memory and peripherals for decoding coded image data. Each of these performs mutual data transfer over the bus. Hardware modules that perform decoding include entropy decoders, inverse transformers, predictors, and deblocking filters. The coded image data is processed in order by each hardware module to restore original data.
그리고, 디코딩 과정에서 해당 하드웨어 모듈들은 외부 메모리나 SRAM으로 구현되는 내부 메모리에 접속하여 필요한 데이터를 읽어 오거나, 처리된 데이터ㄷ르을 저장한다.In the decoding process, the corresponding hardware modules access an internal memory implemented as an external memory or an SRAM to read necessary data or to store processed data.
한편, 영상 데이터들은 매크로 블록(Macro Block) 단위로 압축되는데, 이러한 영상 데이터들을 복원하였을 때, 매크로 블록 간의 양자화 파라미터(QP: Quantiser Parameter) 값의 차이로 인해 생기는 왜곡 현상으로 복원된 영상의 블록들 간 경계지점에서는 영상 데이터 값 또는 경사의 불연속에 의해 블록 단위로 화면에 차이가 생기는 블록킹 현상 (Blocking Artifact)가 발생한다. 이러한 블로킹 현상은 블록의 경계를 따라 사각의 격자 형태로 나타나 감지될 수 있기 때문에 주관적 화질을 저하시키는 요인이 된다.Meanwhile, image data is compressed in units of macro blocks. When the image data are reconstructed, blocks of the image reconstructed due to distortion caused by a difference in the quantization parameter (QP) value between the macro blocks. At the boundary point between the blocks, a blocking artifact occurs in which the screen is different in units of blocks due to the discontinuity of the image data value or the slope. This blocking phenomenon is a factor that degrades the subjective image quality because it can be detected as a rectangular lattice form along the boundary of the block.
또한, 디블록킹은 블록킹 현상을 줄여주기 위한 과정으로써, 이러한 역할을 수행하는 하드웨어 모듈이 디블록킹 필터이다. In addition, deblocking is a process for reducing a blocking phenomenon, and a hardware module performing this role is a deblocking filter.
블록 기반의 부호화 방식에서 블록 에지(Edge)들은 일반적으로 내부 화소들 보다 덜 정밀도를 가지고 재현되기 때문에 블록킹 현상이 발생하게 된다. 이를 위하여 H.264/AVC에서는 적응적인 인 루프 디블록킹 필터를 사용하여 블록킹 현상을 제거한다.In the block-based encoding scheme, block edges are generally reproduced with less precision than internal pixels, and thus blocking occurs. To this end, H.264 / AVC eliminates blocking by using an adaptive in-loop deblocking filter.
여기서, 인 루프 디블록킹 필터는 픽쳐 경계의 에지들을 제외하고는 모든 4 × 4 블록경계의 에지들에 적용될 수 있다. 각 매크로 블록에 필터를 적용하기 위하여, 현재 매크로 블록의 상단과 좌측의 필터링된 화소값을 이용하게 되며, 휘도와 색차 성분을 따로 분리하여 처리한다. 필터링은 각 매크로 블록 내의 4 × 4 블록의 수직/수평 경계로 진행되고, 수평 에지가 위에서 아래로 진행된다. 16 × 16의 휘도 성분은 4개의 16 화소 에지들에 행해지고, 8 × 8 색차 성분은 2개의 8 화소 에지들에 행해진다.Here, the in-loop deblocking filter may be applied to the edges of all 4 × 4 block boundaries except for edges of the picture boundary. To apply a filter to each macro block, the filtered pixel values of the upper and left sides of the current macro block are used, and the luminance and chrominance components are separately processed. Filtering proceeds to the vertical / horizontal boundaries of 4 × 4 blocks within each macro block, with horizontal edges going from top to bottom. A 16 × 16 luminance component is done at four 16 pixel edges, and an 8 × 8 chrominance component is done at two 8 pixel edges.
도 1에 도시된 바와 같이, 이러한 필터링 처리는 구비된 필터(10)를 통해 경계세기(Boundary Strength) 파라미터 특정, 필터 결정 및 필터 실행의 과정으로 진행된다. 보다 상세하게는, 먼저 필터링 연산을 수행할 에지들을 선택하고, 이에 따라 해당 에지의 픽셀 데이터를 외부 메모리 또는 내부 메모리로부터 읽어와서 디블록킹 필터 내의 레지스터 어레이에 저장한다. 그리고, 실제 영상의 에지부분은 살리고 과도한 필터링이 일어나지 않도록 바운드리 필터의 필터 강도를 결정한다. 다음은 임계값과 비교하여 필터링 수행 여부를 최종 결정한다. 만약, 여기서 필터링하는 것으로 결정되면, 레지스터 어레이에 저장된 해당 에지의 픽셀 데이터를 이용하여 필터링을 수행하고, 필터링이 완료된 픽셀은 외부로 출력한다. As shown in FIG. 1, this filtering process is carried out through the provided
더 나아가, H.264의 가변블록 크기의 움직임 보상 기술은 기존 H.263이나 MPEG-2,4 보다 움직임 보상블록의 크기가 더욱 세밀하게 나눔으로써, 영상의 특징이나 영상 내 움직임 특성에 잘 부합하는 기술이다. 즉, MPEG-2에서는 16 × 16 화소 고정크기 움직임 보상 블록을 사용하고, MPEG-4에서는 16 × 16, 8 × 8 화소 두 종류의 움직임 보상 블록을 사용한다. 이와 달리, H.264에서는 16 × 16 화소에서 4 × 4 화소까지 7종류의 움직임 보상 블록 크기를 사용자하여 움직임을 보상한다.Furthermore, the motion compensation technology of variable block size of H.264 divides the size of motion compensation block more precisely than the existing H.263 or MPEG-2,4, which is well suited to the characteristics of the video and the characteristics of motion in the video. Technology. That is, MPEG-2 uses a 16 × 16 pixel fixed-size motion compensation block, and MPEG-4 uses two types of motion compensation blocks of 16 × 16 and 8 × 8 pixels. In contrast, in H.264, motion compensation is performed by using seven types of motion compensation block sizes from 16 × 16 pixels to 4 × 4 pixels.
영상의 평탄한 영역이나 객체의 크기가 큰 경우에는 16 × 16 의 큰 블록으로 움직임 보상이 수행되며, 복잡하고 객체의 크기가 작은 경우는 4 × 4 와 같은 작은 블록으로 움직임 보상이 이루어진다. 일반적으로, 움직임 보상을 위한 블록 크기가 작으면 작을수록 보다 나은 움직임 보상결과를 얻을 수 있다. 그러나 블록 크기가 작아질수록 더 많은 탐색을 수행하여야 하므로 복잡도가 증가하여 전송해야 할 움직임 벡터 개수도 많아진다. 이러한 문제에 따라, H.264에서는 영상의 특성에 따라 블록의 크기를 선택적으로 적용하는 적응형 움직임 보상방법을 수행한다.If the flat area of the image or the size of an object is large, motion compensation is performed in a large block of 16 × 16. In the case of a complex and small object, motion compensation is performed in a small block such as 4 × 4. In general, the smaller the block size for motion compensation, the better motion compensation results can be obtained. However, as the size of the block decreases, more searches must be performed, which increases the complexity and the number of motion vectors to be transmitted. According to this problem, H.264 performs an adaptive motion compensation method that selectively applies the block size according to the characteristics of the image.
하지만, H.264는 디블록킹 필터링을 실행하여 블록킹 현상을 줄이려다가 원치 않게 실제 영상의 에지를 뭉개기도 하며, 계산의 복잡도 및 고사양 성능이 요구됨에 따라 저사양 단말기에서는 사용하지 못하는 경우가 많다. However, H.264 often reduces the blocking effect by performing deblocking filtering, and undesirably crushes the edges of the actual image, and is often not used in low-end terminals due to the complexity of calculation and high specification performance.
이러한 단점에도 불구하고 영상에서 블록킹 현상을 제거하는 것만으로도 주관적인 화질을 상당히 높일 수 있음에 따라, 디블록킹 필터는 주관적인 화질 향상에 가장 핵심적인 기술이라 하겠다. 주관적인 화질 시험을 수행하였을 때, 일반적 인 의견으로는 확실히 디블록킹 필터를 사용하였을 경우와 사용하지 않았을 경우의 화질 차이는 뚜렷이 드러나며, 이는 부호화기의 실제 구현에 있어 고속화 알고리즘을 사용하면 그 차이는 더욱 뚜렷해진다.Despite these drawbacks, the subjective picture quality can be significantly improved by simply removing the blocking effect from the image. Therefore, the deblocking filter is the most important technology for improving the subjective picture quality. When subjective quality test is conducted, the general opinion clearly shows the difference in picture quality with and without deblocking filter, which is more pronounced when using fast algorithm in actual implementation of encoder. Become.
이렇게 영상화질 개선에 있어서 디블록킹 필터링은 매우 중요하며, H.264에서 기존의 H.263v2나 MEPG-4 Visual에 비해 가변블록 움직임 보상, 복수참조 영상, 1/4 화소 움직임 벡터의 정확도 및 인 루프 디블록킹 필터 등을 통해 동일한 화질대비 압축률이 더욱 향상되면서 복잡도도 더욱 증가하게 되어 연산량의 증가 또한 피할 수 없게 되었다. 이를 해결하기 위해서는 복잡도를 줄이면서 화질저하를 막을 수 있는 성능의 개선이 요구된다.Deblocking filtering is very important in improving image quality. Variable block motion compensation, multi-reference image, accuracy of 1/4 pixel motion vector and in-loop in H.264 compared to H.263v2 or MEPG-4 Visual. The deblocking filter, etc., further improves the compression ratio compared to the same image quality, increasing the complexity and inevitably increasing the amount of computation. In order to solve this problem, it is necessary to improve performance to reduce the complexity while preventing the image quality.
따라서, 본 발명은 상기의 문제점들을 해결하기 위해 창출된 것으로, 본 발명의 목적은 인간의 시각 특성에 기반하여 영상의 움직임 및 공간 특성에 맞게 디블록킹 필터링을 수행하는 것으로, 가변블록 크기의 움직임 보상을 통해 형성되는 가변블록 정보를 이용하여 영상의 특성을 분석하고, 가변블록 단위로 디블록킹 필터링을 선택적으로 실행하기 위한 가변블록 기반의 디블록킹 필터링 방법 및 장치와, 이에 적용되는 디블록킹 필터를 제공하는 데 있다.Accordingly, the present invention was created to solve the above problems, and an object of the present invention is to perform deblocking filtering according to motion and spatial characteristics of an image based on human visual characteristics, and to compensate for motion of a variable block size. Provides a variable block based deblocking filtering method and apparatus for analyzing the characteristics of an image using variable block information formed through the variable block and selectively performing deblocking filtering on a variable block basis, and a deblocking filter applied thereto There is.
상기 목적을 달성하기 위한 본 발명의 제 1 관점에 따른 가변블록 기반의 디블록킹 필터링 장치는 영상프레임에 대한 가변블록 크기 움직임 보상을 통해 움직임 벡터를 부호화하기 위한 제 1 처리수단, 수평방향 또는 수직방향의 블록경계를 기점으로 가변블록 및 상기 가변블록에 대응하는 인접블록에 대한 이미지 특성을 판별하여 형성되는 결과를 기초로 상기 가변블록을 단위로 하는 디블록킹 모드 및 필터링 대상영역을 설정하고, 상기 디블록킹 모드 및 상기 필터링 대상영역을 기반으로 필터링 실행하기 위한 제 2 처리수단 및 상기 제 1 처리수단 및 상기 제 2 처리수단과 연결되어 상기 영상프레임에 대한 상기 가변블록 크기 움직임 보상 및 상기 가변블록을 단위로 상기 디블록킹 모드를 선택 적용하기 위한 제어 프로세싱을 실행하는 제 3 처리수단을 포함하는 것을 특징으로 한다.In accordance with a first aspect of the present invention, there is provided a variable block-based deblocking filtering device comprising: first processing means for encoding a motion vector through variable block size motion compensation for an image frame; Set a deblocking mode and a filtering target region based on the variable block based on a result formed by determining image characteristics of a variable block and an adjacent block corresponding to the variable block based on a block boundary of Second processing means for performing filtering based on a blocking mode and the filtering target region, and connected to the first processing means and the second processing means to unite the variable block size motion compensation and the variable block for the image frame; A third process of executing control processing to selectively apply the deblocking mode with It characterized in that it comprises the stage.
바람직하게는, 상기 제 2 처리수단은 상기 제 1 처리수단에서 상기 움직임 벡터를 부호화하여 형성하는 가변블록 정보를 토대로 하여 상기 가변블록 및 상기 인접블록에 대한 이미지 특성을 판별하는 것을 특징으로 한다.Preferably, the second processing means may determine image characteristics of the variable block and the adjacent block based on variable block information formed by encoding the motion vector in the first processing means.
또한, 상기 목적을 달성하기 위한 본 발명의 제 2 관점에 따른 가변블록 기반의 디블록킹 필터는 영상프레임에 대한 가변블록 크기 움직임 보상을 통해 형성되는 가변블록 정보를 토대로 블록경계를 기점으로 하여 가변블록 및 상기 가변블록에 대응하는 인접블록에 대한 이미지 특성을 판별하여 필터링 실행하기 위한 디블록킹 모드 및 필터링 대상영역을 설정한 것을 기초로 상기 가변블록 단위의 필터링을 수평방향 또는 수직방향으로 실행하는 것을 특징으로 한다.In addition, the variable block based deblocking filter according to the second aspect of the present invention for achieving the above object is based on the variable block information formed through the variable block size motion compensation for the video frame based on the block boundary variable block And performing filtering in the horizontal direction or the vertical direction based on setting a deblocking mode and a filtering target region for determining and performing image filtering of the adjacent block corresponding to the variable block. It is done.
그리고, 상기 목적을 달성하기 위한 본 발명의 제 3 관점에 따른 가변블록 기반의 디블록킹 필터링 방법은 (가) 영상프레임에 대한 가변블록 크기 움직임 보상을 통해 형성되는 가변블록 정보를 제공받는 단계, (나) 상기 가변블록 정보를 토대로 하는 블록경계를 기점으로 가변블록 및 상기 가변블록에 대응하는 인접블록 에 대한 이미지 특성을 판별하는 단계, (다) 상기 이미지 특성에 대한 판별결과를 통해 디블록킹 모드 및 필터링 대상영역을 선택적으로 설정하는 단계 및 (라) 상기 디블록킹 모드 및 상기 필터링 대상영역을 기초로 하여 상기 가변블록을 단위로 하는 필터링을 수평방향 또는 수직방향으로 실행하는 단계를 포함하는 것을 특징으로 한다.In addition, the variable block-based deblocking filtering method according to the third aspect of the present invention for achieving the above object comprises the steps of: (a) receiving variable block information formed through variable block size motion compensation for an image frame; B) determining image characteristics of a variable block and an adjacent block corresponding to the variable block based on the block boundary based on the variable block information, (c) deblocking mode and Selectively setting a filtering target region; and (d) executing filtering based on the deblocking mode and the filtering target region in the horizontal direction or the vertical direction. do.
이하, 첨부도면들을 참조하여 본 발명에 따른 가변블록 기반의 디블록킹 필터의 바람직한 실시예를 보다 상세히 설명하면 다음과 같다.Hereinafter, a preferred embodiment of a variable block based deblocking filter according to the present invention will be described in detail with reference to the accompanying drawings.
먼저, 가변블록 기반의 디블록킹 필터링을 위한 디블록킹 필터는 인간의 시각 시스템(HVS: Hnman Visual System)에서는 복잡한 영상영역보다는 평탄하고 단순한 영상영역의 불연속에 더욱 민감하여 단순하고 평탄한 영상영역에서는 필터강도가 강한 필터링을 적용하여 블록화 현상을 줄인다. 반면에 복잡하고 세밀한 영상영역에서는 실제 사물의 에지가 뭉개짐이 없도록 약한 필터링을 선택적으로 적용한다. 이를 위해, 인간의 시각특성에 기반하여 가변블록 및 상기 가변블록에 인접한 인접블록 간의 분석으로 해당 이미지 특성 및 움직임 특성을 추출하여 필터링을 수행하게 되며, 움직임 보상에서의 가변블록 크기의 움직임 보상을 통해 형성되는 가변블록 정보를 토대로 하여 해당 블록들로 형성되는 영역에 대한 이미지 특성을 분석하고, 이미지 특성에 맞는 필터링 모드를 가변블록 단위로 선택 적용하여 적응형 필터링을 수행한다.First, the deblocking filter for variable block-based deblocking filtering is more sensitive to the discontinuity of the flat and simple image region than the complex image region in the human visual system (HVS), so that the filter strength is simple in the flat image region. Apply strong filtering to reduce blocking. On the other hand, in the complex and detailed image area, weak filtering is selectively applied to prevent the edges of real objects from being crushed. To this end, based on the visual characteristics of the human, the variable block and the adjacent block adjacent to the variable block to extract the image characteristics and motion characteristics to perform filtering, through the motion compensation of the variable block size in the motion compensation Based on the variable block information to be formed, image characteristics of regions formed of the corresponding blocks are analyzed, and adaptive filtering is performed by selectively applying a filtering mode suitable for the image characteristics in units of variable blocks.
도 2는 본 발명의 일실시 예에 따른 가변블록 기반의 디블로킹 필터링 장치(100)의 구성도이다. 도 1에 도시된 바와 같이, 가변블록 기반의 디블로킹 필터링 장치(100)는 프레임 메모리(140)로부터 제공되는 소정의 영상프레임에 대한 가변블록 크기의 움직임 보상을 통해 움직임 벡터를 부호화하여 가변블록 정보를 형성하기 위한 제 1 처리수단(110), 상기 제 1 처리수단(110)으로부터 제공되는 가변블록 정보를 토대로 하여 블록경계를 기점으로 가변블록 및 상기 가변블록에 인접하여 대응하는 인접블록에 대한 이미지 특성을 판별하고, 이러한 판별결과를 통해 다수의 디블록킹 모드 중 필터링 실행하기 위한 해당 디블록킹 모드를 설정하며, 설정한 디블록킹 모드에 해당하는 필터링 대상영역을 더불어 설정한 후, 이를 기초로 수평방향 또는 수직방향으로 가변블록 단위의 필터링을 실행하기 위한 제 2 처리수단(120) 및 제 1 처리수단(110) 및 제 2 처리수단(120)과 연결되어 해당 영상프레임에 대한 가변블록 크기의 움직임 보상을 위한 제어 프로세싱 및 가변블록 단위로 디블록킹 모드를 선택적으로 각각 설정하기 위한 제어 프로세싱을 실행하기 위한 제 3 처리수단(130)을 포함한다.2 is a block diagram of a
여기서, 제 2 처리수단(120)은 가변블록 정보를 토대로 하는 블록경계 중에서 영상프레임을 기준으로 수직방향의 블록경계에 대응하여 가변블록 단위의 필터링을 수직방향으로 실행하거나, 상기 블록경계 중에서 수평방향의 블록경계에 대응하여 가변블록 단위의 필터링을 수평방향으로 실행한다.Here, the
또한, 제 2 처리수단(120)은 가변블록을 단위로 하는 필터링을 영상프레임에 수평방향 및 수직방향 중 어느 하나의 방향으로 실행한 후, 나머지 방향으로 재차 실행하게 되며, 이러한 과정에서 재차 실행되는 상기 나머지 방향의 필터링은 이전 필터링을 통해 재형성된 화소값들을 토대로 실행된다.In addition, the
바람직하게는, 제 2 처리수단(120)이 수직방향으로 가변블록 단위의 필터링을 실행한 후, 수평방향으로 가변블록 단위의 필터링을 실행한다.Preferably, the
더 나아가, 제 2 처리수단(120)은 가변블록 단위로 디블록킹 모드 및 상기 디블록킹 모드에 해당하는 필터링 대상영역에 대한 설정 파라미터와 기 설정된 양자화 파라미터 간의 관계를 통해 가변블록 단위의 디블로킹 필터링을 수행할지 여부를 결정하게 된다.Further, the
상기 가변블록이라 함은 16 × 16, 16 × 8, 8 × 16 및 8 × 8 중 어느 하나의 크기인 매크로 블록 또는 8 × 8, 8 × 4, 4 × 8 및 4 × 4 중 어느 하나의 크기인 서브 매크로 블록으로 구현되는 것을 일컫는 것이며, 상기 인접블록이라 함은 상기 가변블록의 좌측 블록경계를 기점으로 하여 해당 픽셀들 간 접하는 블록 및 상기 가변블록의 상단에 해당 픽셀들 간 접하는 블록 중 적어도 어느 하나를 포함하는 것을 일컫는 것이다. The variable block is a macroblock having a size of any one of 16 × 16, 16 × 8, 8 × 16, and 8 × 8, or the size of any one of 8 × 8, 8 × 4, 4 × 8, and 4 × 4. In the sub-macro block, the neighboring block is at least one of a block in contact with the pixels based on a left block boundary of the variable block and a block in contact with the pixels on the top of the variable block. It refers to including one.
그렇지만, 상기 인접블록은 언급한 바와 다르게 가변블록의 우측 블록경계를 기점으로 하는 등과 같이 필터링 구현과 관련하여 보다 다양하게 구현될 수 있다.However, the neighboring block may be implemented in various ways with respect to the filtering implementation such as starting from the right block boundary of the variable block.
도 3은 도 2에 도시된 디블로킹 필터(120)의 구성도이다. 도 3에 도시된 바와 같이 디블로킹 필터(120)는 가변블록 및 인접블록으로 형성되는 필터링 결정영역에 대한 블록 에지값을 판별하고, 이러한 판별결과를 통해 필터링 결정영역에 대 한 이미지 특성을 판별하기 위한 이미지 특성분석부(121), 상기 이미지 특성에 대한 판별결과를 토대로 하여 가변블록 단위로 해당하는 디블록킹 모드를 선택적으로 설정하기 위한 필터모드 선택부(122) 및 각각의 디블록킹 모드에 대응하는 필터링 대상영역을 형성하고, 상기 각각의 필터링 대상영역에 대한 필터링을 실행하는 필터 실행부(123)를 포함한다.3 is a block diagram of the
이에 더하여, 상기 디블록킹 모드는 필터링 결정영역에 포함되는 가변블록 단위로 각각 선택 적용되어 필터링하기 위한 모드이며, 이하에서는 보다 상세한 설명을 위해 수직방향의 블록경계를 기점으로 수직방향의 디블로킹 필터링이 실행되는 과정을 위주로 하여 상술하기로 한다.In addition, the deblocking mode is a mode for selectively applying and filtering each of the variable blocks included in the filtering decision region. Hereinafter, the deblocking filtering in the vertical direction is performed based on the vertical block boundary for further explanation. The execution process will be described in detail above.
상기 디블록킹 모드는 해당 영역에서의 이미지 특성에 대한 판별결과를 토대로 가변블록 및 인접블록으로 형성되는 필터링 결정영역이 화소 복잡도를 나타내기 위하여 사전에 기 설정된 임계값을 초과하여 배치된 화소의 변이가 많은 영역인 제 영역이고, 가변블록 및 인접블록 중 적어도 어느 하나가 서브 매크로 블록이며 블록경계에 대응하는 픽셀 수가 4개인 경우, 예정된 레벨 중 최저의 필터강도인 제 1 필터강도로 설정되는 제 1 디블록킹 모드, 필터링 결정영역이 상기 임계값과 매칭하는 영역인 제 2 영역이고 가변블록 및 인접블록 중 적어도 어느 하나가 서브 매크로 블록이며 블록경계에 대응하는 픽셀 수가 8개인 경우, 상기 제 1 필터강도보다 제 1 레벨 높은 제 2 필터강도로 설정되는 제 2 디블록킹 모드, 필터링 결정영역이 상기 임계값보다 예정된 레벨에서 제 1 레벨 미만인 영역인 제 3 영역이고 가변블록 및 인접블록이 매크로 블록이며 블록경계에 대응하는 픽셀 수가 8개인 경 우, 상기 제 2 필터강도보다 제 1 레벨 높은 제 3 필터강도로 설정되는 제 3 디블록킹 모드 및 필터링 결정영역이 상기 임계값보다 예정된 제 2 레벨 미만인 영역으로 배치된 화소의 변이가 적은 영역인 제 4 영역이고 가변블록 및 인접블록이 매크로 블록이며 블록경계에 대응하는 픽셀 수가 16개인 경우, 상기 제 3 필터강도보다 제 1 레벨 높은 제 4 필터강도로 설정되는 제 4 디블록킹 모드 중에서 어느 하나로 설정되는 모드이다.In the deblocking mode, the filtering decision region formed of the variable block and the adjacent block based on the determination result of the image characteristics in the corresponding region has a variation of a pixel disposed above a preset threshold value to indicate pixel complexity. A first region set as a first filter intensity, which is the lowest filter intensity among predetermined levels, when the first region is a large region, and at least one of the variable block and the adjacent block is a sub macroblock and the number of pixels corresponding to the block boundary is four; When the blocking mode and the filtering decision region are a second region that matches the threshold, and at least one of the variable block and the adjacent block is a sub macroblock and the number of pixels corresponding to the block boundary is greater than the first filter intensity, A second deblocking mode that is set to a first filter strength higher than the first level, wherein the filtering decision region is greater than the threshold If the third area is an area less than the first level from the predetermined level, the variable block and the adjacent block are macro blocks, and the number of pixels corresponding to the block boundary is eight, the third filter strength is set to be higher than the second filter strength. The fourth deblocking mode and the filtering decision region, the fourth region being a region in which the variation of pixels arranged in an area having a predetermined level less than the threshold value is small, and the variable block and the adjacent block are macro blocks, and pixels corresponding to block boundaries. When the number is 16, the mode is set to any one of the fourth deblocking modes set to the fourth filter strength higher than the third filter strength.
더 나아가, 상기 디블록킹 모드는 제 1 디블록킹 모드, 제 2 디블록킹 모드, 제 3 디블록킹 모드 및 제 3 디블록킹 모드를 설정하기 위한 상기의 조건들 이외의 경우, 해당 영역에서는 디블로킹 필터링을 실행하지 않는 것이 바람직하다.Further, the deblocking mode may perform deblocking filtering in the corresponding region except for the above conditions for setting the first deblocking mode, the second deblocking mode, the third deblocking mode, and the third deblocking mode. It is preferable not to run.
도 4는 도 3에 도시된 디블로킹 필터(120)가 제 1 디블록킹 모드를 설정하는 것에 대한 개념도이다. 도 4에 도시된 바와 같이, 상기 제 1 디블록킹 모드는 가변블록 및 인접블록 중 블록경계에 접하는 픽셀들을 필터링 대상영역으로 하여 상기에서 언급된 제 1 필터강도로 필터링 실행하기 위한 것이며, 도시된 일실시 예는 16 × 16 크기의 가변블록의 인접블록이 8 × 4 크기이거나 4 × 4 크기인 경우이고, 이 경우에서는 복잡한 영역인 제 1 영역으로 가정하고 사물의 실제 에지가 존재하는 것으로 가정하여 가장 약한 필터링을 실행하는 것이다.4 is a conceptual diagram for setting the first deblocking mode by the
또한, 상기 일실시 예에서 상기 필터링 대상영역에는 블록경계를 중심으로 p0와 q0의 2개 화소들에 대해서 필터링을 실행하게 되며, 관련한 모드들 중에서 가 장 세밀하고 주의깊게 필터링이 되어야 하기 때문에 다음과 같은 평탄화식을 적용하여 출력 화소값을 형성하는 것이 바람직하다.In addition, in the embodiment, the filtering target region has a p 0 and a center around a block boundary. Since the filtering is performed on two pixels of q 0 , and the most detailed and careful filtering is required among the related modes, it is preferable to form the output pixel value by applying the following flattening equation.
d = (3p1 - 8p0 + 8q0 - 3q1)/16d = (3p 1 -8p 0 + 8q 0 -3q 1 ) / 16
d'= sign(d)Max[0,│d│-Max(0,2(│d│- QP))]d '= sign (d) Max [0, │d│-Max (0,2 (│d│- QP))]
p0'= p0 + d.p 0 '= p 0 + d.
q0'= q0 + d.q 0 '= q 0 + d.
(단, p0 : 블록경계에 접하는 인접블록의 픽셀데이터, p1 : p0과 접하는 픽셀데이터, q0 : 블록경계에 접하는 가변블록의 픽셀데이터, q1 : q0과 접하는 픽셀데이터, QP : 양자화 파라미터, p0' : p0에 대한 출력 화소값, q0' : q0에 대한 출력 화소값)(P 0 : Pixel data of adjacent block adjacent to the block boundary, p 1 : pixel data in contact with p 0 , q 0 : Pixel data of the variable block adjacent to the block boundary, q 1 : pixel data in contact with q 0 , QP: quantization parameter, p 0 ': output pixel value for p 0 , q 0 ': output pixel value for q 0 )
의 식을 통해 상기 출력 화소값을 형성한다.The output pixel value is formed by the following equation.
도 5는 도 3에 도시된 디블로킹 필터(120)가 제 2 디블록킹 모드 또는 제 3 디블록킹 모드를 설정하는 것에 대한 개념도이다. 도 5에 도시된 바와 따라, 먼저 제 2 디블록킹 모드는 가변블록 및 인접블록 중 블록경계를 기점으로 하여 좌/우측 각각 2개의 픽셀들이 이루는 영역을 상기 제 2 디블록킹 모드의 필터링 대상영역으 로 하여 상기에서 언급된 제 2 필터강도로 필터링 실행하기 위한 것이며, 도시된 일실시 예는 16 × 16 크기의 가변블록이 매크로 블록이고, 상기 가변블록의 인접블록이 8 × 8 또는 4 × 8 크기의 서브 매크로 블록인 경우이고, 이 경우에서는 제 1 디블로킹 모드에서 보다는 세밀하지 못하지만 세밀한 영역으로 분류되는 제 2 영역으로 가정하고 블록화 현상과 실제 사물의 에지가 공존하는 것으로 가정하여 필터링 실행한다.FIG. 5 is a conceptual diagram of setting the second deblocking mode or the third deblocking mode by the
또한, 상기 일실시 예에서 상기 필터링 대상영역에는 블록경계를 중심으로 p0 ~ p1, q0 ~ q1의 4개의 화소범위로 필터링 실행하게 되며, 블록경계값의 차의 1/5을 p1에 1배를 더하고, p0에 2배를 더하는 다음과 같은 평탄화식을 적용하게 된다.In addition, in the exemplary embodiment, the filtering target region may include p 0 to p 1 , based on a block boundary. q 0 of q 1 Filtering is performed in four pixel ranges, and the following flattening equation is applied to add 1/5 to p 1 and twice to p 0 .
d = (p0 - q0)/5d = (p 0 -q 0 ) / 5
p1'= p1 + sign(d)*│d│.p 1 '= p 1 + sign (d) * | d│.
p0'= p0 + 2 * sign(d)*│d│.p 0 '= p 0 + 2 * sign (d) * │d│.
q0'= q0 - 2 * sign(d)*│d│.q 0 '=
q1'= q1 - sign(d)*│d│.q 1 '= q 1- sign (d) * | d│.
(단, p0 : 블록경계에 접하는 인접블록의 픽셀데이터, p1 : p0과 접하는 픽셀데이터, q0 : 블록경계에 접하는 가변블록의 픽셀데이터, q1 : q0과 접하는 픽셀데이 터, QP : 양자화 파라미터, p0' : p0에 대한 출력 화소값, q0' : q0에 대한 출력 화소값, p1' : p1에 대한 출력 화소값, q1' : q1에 대한 출력 화소값)(P 0 : Pixel data of adjacent block adjacent to the block boundary, p 1 : pixel data in contact with p 0 , q 0 : Pixel data of a variable block adjacent to a block boundary, q 1 : pixel data in contact with q 0 , QP: quantization parameter, p 0 ': output pixel value for p 0 , q 0 ': output pixel value for q 0 , p 1 ': output pixel value for p 1 , q 1 ': output pixel value for q 1 )
의 식을 통해 출력 화소값을 형성하게 된다.The output pixel value is formed through the equation.
더 나아가, 제 3 디블록킹 모드는 가변블록 및 인접블록 중 블록경계를 기점으로 하여 좌/우측 각각 4개의 픽셀들이 이루는 영역을 필터링 대상영역으로하여 상기에서 언급된 제 3 필터강도로 필터링 실행하게 된다. Furthermore, in the third deblocking mode, filtering is performed using the third filter intensity mentioned above by using a region formed by four pixels in each of the left and right sides as a filtering target region based on the block boundary among the variable block and the adjacent block. .
도시된 일실시 예를 토대로, 이 경우는 16 × 16 크기의 가변블록의 인접블록이 16 × 8의 크기이거나 8 × 8의 크기인 경우이며, 블록경계를 둘러싼 영상을 단순한 영역인 것으로 가정하여 상기 제 3 디블록킹 모드를 적용하는 것이고, 필터링 대상영역은 블록경계면의 p0 ~ p3, q0 ~ q3의 8개 화소들에 대하여 필터링을 적용한다. 또한, 블록경계를 중심으로 p3, p2, p1, p0, q3, q2, q1, q0의 8화소를 필터링 대상으로 정하여 (1/16, 1/16, 1/8, 1/8, 1/4, 1/8, 1/8, 1/16, 1/16)의 가중치를 갖는 1차원 9탭 평탄화 식을 적용하게 된다.Based on the illustrated embodiment, in this case, a neighboring block of a 16 × 16 variable block is 16 × 8 or 8 × 8, and it is assumed that the image surrounding the block boundary is a simple area. The third deblocking mode is applied, and the filtering target region is p 0 of the block boundary surface. to p 3 , q 0 of q 3 Filtering is applied to eight pixels. Also, around the block boundary, p 3 , p 2 , p 1 , p 0 , q 3 , q 2 , q 1 , By specifying 8 pixels of q 0 as the filtering target, weights of (1/16, 1/16, 1/8, 1/8, 1/4, 1/8, 1/8, 1/16, 1/16) The one-dimensional 9-tap flattening equation is applied.
도 6은 도 3에 도시된 디블로킹 필터(120)가 제 4 디블록킹 모드를 설정하는 것에 대한 개념도이다. 도 6에 도시반 바에 따라, 상기 제 4 디블록킹 모드는 가변블록 및 인접블록을 필터링 대상영역으로 하여 상기에서 언급된 제 4 필터강도로 필터링 실행하기 위한 것이며, 도시된 일실시 예는 16 × 16 크기의 가변블록의 인접블록이 16 × 16 크기이거나 8 × 16 크기인 경우이고, 이 경우에서는 평탄한 영역인 제 4 영역으로 가정하여 가장 강한 필터링을 실행하는 것이다.FIG. 6 is a conceptual diagram of setting the fourth deblocking mode by the
또한, 상기 일실시 예에서는 블록경계뿐만 아니라 블록 내부의 왜곡 현상도 없애야 하기 때문에 16 × 16 크기의 매크로 블록을 기분으로 4개의 휘도구성과 2개의 컬러 구성의 모든 4 × 4 블록 에지를 필터링한다.In addition, in the above embodiment, since not only the block boundary but also the distortion inside the block must be eliminated, all 4 × 4 block edges of four luminance and two color configurations are filtered with a 16 × 16 macroblock.
다음의 도표는 수직방향과 수평방향으로 상기 언급된 제 1 디블록킹 모드 내지 제 4 디블록킹 모드를 실행하였을 경우에 대한 상호 관계를 나타낸 것이다.The following table shows the correlations when the above-mentioned first to fourth deblocking modes are executed in the vertical direction and the horizontal direction.
도 7은 도 3에 도시된 디블로킹 필터(120)를 통해 영상프레임에 각각의 디블록킹 모드를 설정하여 나타낸 도면이다. 도 7에 도시된 바와 같이, 움직임 보상의 가변블록 정보를 기반으로 하는 디블로킹 필터링이 적용된 영상프레임은 기존 방식의 line by line 으로 블록경계면의 화소들의 분석을 통하여 필터링의 적용여부를 판단하기 때문에 계산량이 많이 차지하게 되지만, 가변블록 단위로 필터링 적용여부를 판별하여 그 계산량이 현저히 감소하게 된다.FIG. 7 is a diagram illustrating each deblocking mode set in an image frame through the
더 나아가, 상기 언급된 효과를 입증하기 위해, 움직임 보상의 가변블록 정보를 기반으로 하는 디블로킹 필터(120)의 성능을 측정하기 위하여 H.264 표준화 그룹에서 권고하는 JM(Joint Model) version 10 코덱을 이용하여 실험하였다.Furthermore, in order to prove the above-mentioned effect, JM (Joint Model)
H.264 표준화 그룹에서는 비트율의 차이는 %로, PSNR의 차이는 차분값으로 비교하는 것을 권고하기 때문에 △PSNR을 이용하여 결과를 측정하였고, 디블로킹 필터(120)는 영상의 주관적 화질에 영향이 크기 때문에 PSNR 측정과 더불어 주관적 화질 측정방법인 MOS 측정을 병행하였다. 또한, 계산량의 감소의 성능개선 측정을 위하여 다음과 같은 식을 이용하였다.In the H.264 standardization group, it is recommended to compare the bit rate difference by% and the PSNR difference by difference value. Therefore, the result is measured using ΔPSNR, and the
△PSNR(dB) = (JM's PSNR - 본 발명의 PSNR).ΔPSNR (dB) = (JM's PSNR—PSNR of the present invention).
계산량 감소(%) = {(JM's 계산량 - 본 발명의 계산량)/(JM's 계산량)*100}% Reduction in calculation = {(JM's calculation-calculation of the present invention) / (JM's calculation) * 100}
실험에 사용된 시퀀스는 다양한 특성을 갖는 영상으로 구성하였고, 형식은 QCIF로 휘도와 컬러 성분은 4:2으로 샘플링하였다. 영상 내 부호화되는 I, P 프레임에 양자화 파라미터의 단계별 변화를 주어 실험하였다.The sequence used in the experiment consisted of images with various characteristics. The format was QCIF and the luminance and color components were sampled at 4: 2. Experiments were performed by varying the quantization parameters step by step in the I and P frames encoded in the image.
도 8에 도시된 그래프들은 상기의 과정을 통해 형성된 실험 데이터를 기초로 하여 구현된 것들이다.The graphs shown in FIG. 8 are implemented based on experimental data formed through the above process.
또한, 도 9는 도 8에 도시된 그래프를 해석하여 나타낸 도표이며, 도 9에 나타난 바와 같이, 실험결과로 평균적인 PSNR 감소는 0.19(dB) 정도로 객관적인 화질 의 변환가 거의 없었으며, 전체 평균 수행시간은 기존 방식대비 38.67% 감소를 보였다. 필터링을 위한 IF와 for 문의 수행횟수가 각각 23.89% 감소한 것이 전체 수행시간 감소에 영향을 준 것으로 판단된다.In addition, FIG. 9 is a diagram illustrating an analysis of the graph shown in FIG. 8, and as shown in FIG. 9, the average PSNR reduction is almost 0.19 (dB) as a result of the experiment. Decreased 38.67% compared to the previous method. The 23.89% decrease in the number of IF and for statements for filtering affected the overall execution time reduction.
이하에서는, 첨부도면들을 참조하여 본 발명에 따른 디블로킹 필터(120)의 동작과정에 대해 보다 상세히 설명하면 다음과 같다.Hereinafter, the operation of the
도 10은 도 3에 도시된 디블로킹 필터(120)의 동작과정을 도시한 순서도이다. 도 10에 도시된 바와 같이, 움직임 보상의 가변블록 정보를 기반으로 하는 디블로킹 필터링 방법은 소정의 영상프레임에 대해 가변블록 크기의 움직임 보상을 실행하여 가변블록 정보를 형성하는 것으로 진행된다(S100 및 S102).FIG. 10 is a flowchart illustrating an operation of the
상기 S100 및 S102 단계에서 형성된 가변블록 정보를 디블로킹 필터(120)가 제공받아 수직방향 필터링을 실행하게 된다(S104). 아울러, 상기 S102 단계는 필터링 설정에 있어서 임의적으로 변경할 수 있는 것이어서 수평방향의 필터링을 우선적으로 실행할 수도 있다.The
이후로, 디블로킹 필터링하는 과정은 블록경계를 기점으로 하여 각각의 가변블록 및 인접블록에 대한 이미지 특성을 판별하고(S106), 판별하여 형성되는 결과를 통해 각 가변블록 단위에 해당하는 디블록킹 모드를 선택하게 된다(S108).Subsequently, the deblocking filtering process is performed based on a block boundary to determine image characteristics of each variable block and adjacent blocks (S106), and the deblocking mode corresponding to each variable block unit based on the determined result. It will be selected (S108).
다음은 상기 S108 단계에서 선택적으로 설정된 디블록킹 모드를 실행하기 위한 필터링 대상영역을 설정하고(S110), 상기 필터링 대상영역에 대해 가변블록 단위의 필터링을 실행하여 각 블록마다 화소값을 재형성하게 된다(S112 및 S114).Next, a filtering target region for executing the deblocking mode selectively set in step S108 is set (S110), and the filtering unit performs filtering in a variable block unit to reconstruct the pixel value for each block. (S112 and S114).
이후로, 디블로킹 필터링하는 과정은 수직방향의 필터링을 거쳐 수평방향의 필터링을 수행하게 되며, 이러한 과정에서는 상기 S114 단계에서의 필터링으로 재형성된 화소값을 기초로 필터링 실행하여 출력 화소값을 형성하게 된다(S116 및 S118).Subsequently, the deblocking filtering is performed through the vertical filtering to perform the horizontal filtering. In this process, the filtering is performed based on the pixel value re-formed by the filtering in the step S114 to form an output pixel value. (S116 and S118).
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 음을 이해할 수 있을 것이다. Although the above has been described with reference to a preferred embodiment of the present invention, those skilled in the art will be variously modified and changed within the scope of the invention without departing from the spirit and scope of the invention described in the claims below. I can understand the sound that can be made.
따라서, 본 발명에서는 가변블록 크기의 움직임 보상을 통해 형성되는 가변블록 정보를 이용하여 가변블록 단위로 디블록킹 필터링을 선택적으로 실행함으로써, 기존의 line by line의 화소 단위로 필터링 실행하는 것보다 높은 성능 구현을 이루었으며, 필터링 적용을 위한 영상의 특성(평탄영역, 보통영역, 복잡영역)을 별도로 분석할 필요없이 영상특성에 부합하여 평탄하거나 단순한 영상영역인 경우에는 상대적으로 강한 필터링을 실행함에 따라 블록화 현상을 최대한 감소시키고, 에지부분이 많아 복잡한 영역에서는 약한 필터링을 실행하여 계산속도를 줄임에 따라 전체적으로 화질저하 없이 필터링의 속도를 향상시킬 수 있는 이점이 있다.Accordingly, in the present invention, by selectively performing deblocking filtering in units of variable blocks using variable block information formed through motion compensation having a variable block size, higher performance than performing filtering in units of pixels of a conventional line by line. In the case of a flat or simple image area that meets the image characteristics without having to separately analyze the characteristics of the image (flat area, normal area, and complex area) for filtering application, blocking is performed by performing relatively strong filtering. As the phenomenon is reduced as much as possible and the edges have many large areas, weak filtering is performed to reduce the computational speed, thereby improving the filtering speed without degrading the overall image quality.
Claims (26)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070063866A KR100968027B1 (en) | 2007-06-27 | 2007-06-27 | Variable block-based method and apparatus for filtering of deblocking type, and deblocking filter applied to the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070063866A KR100968027B1 (en) | 2007-06-27 | 2007-06-27 | Variable block-based method and apparatus for filtering of deblocking type, and deblocking filter applied to the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080114375A KR20080114375A (en) | 2008-12-31 |
KR100968027B1 true KR100968027B1 (en) | 2010-07-07 |
Family
ID=40371476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070063866A KR100968027B1 (en) | 2007-06-27 | 2007-06-27 | Variable block-based method and apparatus for filtering of deblocking type, and deblocking filter applied to the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100968027B1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011049392A2 (en) * | 2009-10-21 | 2011-04-28 | 에스케이텔레콤 주식회사 | Image encoding and decoding apparatus and method |
US9137545B2 (en) | 2009-10-21 | 2015-09-15 | Sk Telecom Co., Ltd. | Image encoding and decoding apparatus and method |
WO2011071347A2 (en) * | 2009-12-11 | 2011-06-16 | 에스케이텔레콤 주식회사 | Image encoding/decoding method and apparatus using selective filtering of a motion-compensated frame, and inter-prediction method and apparatus for same |
ES2618932T3 (en) | 2010-04-23 | 2017-06-22 | M&K Holdings Inc. | Image Encoding Apparatus |
US9609352B2 (en) | 2010-12-14 | 2017-03-28 | M&K Holdings Inc. | Apparatus for encoding a moving picture |
CN108696752B (en) * | 2011-09-20 | 2021-07-27 | Lg 电子株式会社 | Method and apparatus for encoding/decoding image information |
KR102350071B1 (en) * | 2011-11-04 | 2022-01-11 | 엘지전자 주식회사 | Method and apparatus for encoding/decoding image information |
WO2017217656A1 (en) * | 2016-06-15 | 2017-12-21 | 주식회사 에벤에셀케이 | Method and apparatus for video compression and computer program therefor |
KR101930389B1 (en) * | 2016-06-15 | 2019-01-02 | 주식회사 에벤에셀케이 | Video File Compression Method, Device and Computer Program Thereof |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050047373A (en) * | 2003-11-17 | 2005-05-20 | 삼성전자주식회사 | Method and apparutus for video coding using arbitrary-size variable block |
KR20050091270A (en) * | 2004-03-11 | 2005-09-15 | 학교법인 대양학원 | Filter for removing blocking effect and filtering method thereof |
KR20070053381A (en) * | 2005-11-21 | 2007-05-25 | 엘지전자 주식회사 | Aapparatus and method for post-processing filtering of video signal |
-
2007
- 2007-06-27 KR KR1020070063866A patent/KR100968027B1/en not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050047373A (en) * | 2003-11-17 | 2005-05-20 | 삼성전자주식회사 | Method and apparutus for video coding using arbitrary-size variable block |
KR20050091270A (en) * | 2004-03-11 | 2005-09-15 | 학교법인 대양학원 | Filter for removing blocking effect and filtering method thereof |
KR20070053381A (en) * | 2005-11-21 | 2007-05-25 | 엘지전자 주식회사 | Aapparatus and method for post-processing filtering of video signal |
Also Published As
Publication number | Publication date |
---|---|
KR20080114375A (en) | 2008-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100968027B1 (en) | Variable block-based method and apparatus for filtering of deblocking type, and deblocking filter applied to the same | |
RU2461977C2 (en) | Compression and decompression of images | |
JP4847890B2 (en) | Encoding method converter | |
US8311097B2 (en) | Image processing method for adaptive spatial-temporal resolution frame | |
EP1805994B1 (en) | Deblocking filter | |
KR100797807B1 (en) | Method of coding artefacts reduction | |
US8712171B2 (en) | Image coding apparatus and image decoding apparatus | |
US8422546B2 (en) | Adaptive video encoding using a perceptual model | |
US7957467B2 (en) | Content-adaptive block artifact removal in spatial domain | |
TWI555342B (en) | Method of removing deblocking artifacts | |
JP5470405B2 (en) | Image coding apparatus and method | |
JP4593437B2 (en) | Video encoding device | |
US20130287312A1 (en) | Image encoding device, image decoding device, image encoding method, and image decoding method | |
US20080181304A1 (en) | Moving image encoding device and moving image encoding method | |
US20150023420A1 (en) | Image decoding device, image encoding device, image decoding method, and image encoding method | |
KR100846774B1 (en) | Filtering method for removing block artifacts and/or ringing noise and apparatus therefor | |
JP2003244702A (en) | Filtering method and apparatus for removing blocking artifact | |
JP2011510591A (en) | Coding mode determination method and apparatus using spatio-temporal complexity | |
KR20050091270A (en) | Filter for removing blocking effect and filtering method thereof | |
KR20050084266A (en) | A unified metric for digital video processing(umdvp) | |
TW201904295A (en) | Improved non-local adaptive loop filter processing | |
Naccari et al. | Low complexity deblocking filter perceptual optimization for the HEVC codec | |
EP2320662A1 (en) | Compressed image noise removal device and reproduction device | |
JP5375590B2 (en) | Quantization control circuit, quantization parameter changing method, and encoding apparatus | |
EP1675405A1 (en) | Optimisation of a quantisation matrix for image and video coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |