KR101063420B1 - Multi deblocking filtering device and method - Google Patents

Multi deblocking filtering device and method Download PDF

Info

Publication number
KR101063420B1
KR101063420B1 KR1020080105323A KR20080105323A KR101063420B1 KR 101063420 B1 KR101063420 B1 KR 101063420B1 KR 1020080105323 A KR1020080105323 A KR 1020080105323A KR 20080105323 A KR20080105323 A KR 20080105323A KR 101063420 B1 KR101063420 B1 KR 101063420B1
Authority
KR
South Korea
Prior art keywords
deblocking filtering
processors
boundary
divided
vertical
Prior art date
Application number
KR1020080105323A
Other languages
Korean (ko)
Other versions
KR20100046473A (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 KR1020080105323A priority Critical patent/KR101063420B1/en
Publication of KR20100046473A publication Critical patent/KR20100046473A/en
Application granted granted Critical
Publication of KR101063420B1 publication Critical patent/KR101063420B1/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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

Landscapes

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

Abstract

본 발명에 따른 멀티 디블록킹 필터링 장치는 매크로 블록의 경계를 대상으로 디블록킹 필터링을 수행하는 디블록킹 필터링 장치로서, 상기 매트로 블록의 수직 경계를 n(n은 2이상의 자연수)개로 분할하는 제어부; 및 상기 매크로 블록의 n개로 분할된 각 수직 경계를 대상으로 디블록킹 필터링을 수행하는 n개의 프로세서를 포함하여 구성된다.A multi-blocking filtering device according to the present invention includes a deblocking filtering device for performing deblocking filtering on a boundary of a macroblock, the multiblocking filtering device comprising: a control unit dividing a vertical boundary of the macro block into n (n is two or more natural numbers); And n processors for performing deblocking filtering on n vertical boundaries divided into n of the macroblocks.

상기 본 발명에 의하면, 2개 이상의 복수 개 프로세서가 2개 이상으로 분할된 매크로 블록의 수직 경계 또는 수평 경계를 대상으로 디블록킹 필터링을 독립적으로 처리함으로써 영상 처리의 효율을 높이고 더욱 안정적인 인코딩 및 디코딩을 실현할 수 있다. According to the present invention, two or more processors independently process deblocking filtering on vertical boundaries or horizontal boundaries of a macroblock divided into two or more to increase the efficiency of image processing and more stable encoding and decoding. It can be realized.

Description

멀티 디블록킹 필터링 장치 및 방법{APPARATUS AND METHOD FOR MULTI DEBLOCKING FITERING}Apparatus and method for multi deblocking filtering {APPARATUS AND METHOD FOR MULTI DEBLOCKING FITERING}

본 발명은 영상 데이터의 인코딩 또는 디코딩에 이용되는 디블록킹 필터링 장치에 관한 것으로서 더욱 구체적으로는 다원화된 개별 프로세서를 병렬적으로 이용하여 상기 디블록킹 필터링을 처리하는 장치에 관한 것이다.The present invention relates to a deblocking filtering apparatus used for encoding or decoding image data, and more particularly, to an apparatus for processing the deblocking filtering using a plurality of individual processors in parallel.

영상 데이터, 특히 동영상 데이터는 데이터의 크기 및 전송효율 등 다양한 이유와 목적에 의하여 영상 압축 인코딩 등의 과정을 거쳐 생성되며 디코딩 과정을 거쳐 재생되는 것이 일반적이다.Video data, in particular video data, is generated through a process such as video compression encoding for various reasons and purposes such as data size and transmission efficiency, and is generally reproduced through decoding.

상기와 같은 영상 데이터의 인코딩 및 디코딩을 수행하는 코덱의 하나의 예가 H.264인데 상기 H.264는 매우 높은 데이터 압축률을 가지는 디지털 비디오 코덱 표준으로서 MPEG-4파트 AVC(Advanced Video Coding)으로 칭해지기도 한다. 상기 H.264는 여러 가지 프로세싱을 거쳐 인코딩 처리되며 이와 대응되는 프로세싱 과정을 거쳐 디코딩처리된다.One example of a codec that encodes and decodes video data is H.264. H.264 is a digital video codec standard having a very high data compression ratio and may be referred to as MPEG-4 part AVC (Advanced Video Coding). do. The H.264 is encoded through various processing and decoded through a corresponding processing.

디블록킹 필터링은 H.264를 포함한 일반적인 영상 인코딩 또는 디코딩의 과정에서 발생하는 블록 경계의 왜곡을 더욱 부드럽게 처리하여 화질과 영상 예측을 향상시키기 위한 필터링 기법을 의미한다.Deblocking filtering refers to a filtering technique for improving image quality and image prediction by smoothing the block boundary distortion that occurs during general image encoding or decoding including H.264.

매크로 블록은 상기 디블록킹 필터링의 연산 기본 단위에 해당하는 블록으로서, 통상적으로 16×16의 크기의 픽셀의 휘도 성분(Y)과 이에 대응되는 2개의 색차 성분(Cb, Cr)을 가지는 블록을 의미한다. The macro block is a block corresponding to the basic unit of operation of the deblocking filtering, and means a block having a luminance component Y of a pixel having a size of 16 × 16 and two color difference components Cb and Cr corresponding thereto. do.

도 1는 상기 매크로 블록을 대상으로 한 종래의 디블록킹 필터링 처리 방법을 도시하고 있다.1 illustrates a conventional deblocking filtering method for the macroblock.

디블록킹 필터링은 매크로 블록의 수직 경계를 대상으로 한 필터링과 수평 경계를 대상으로 한 필터링으로 구성되는데, 종래에는 도 1에 도시된 바와 같이 매크로 블록(10)의 4 개의 수직 경계(11)에 대한 디블록킹 필터 필터링 처리 및 4 개의 수평 경계(12)에 대한 디블록킹 필터링 처리를 단일의 프로세서(single processor)가 모두 수행하는 구성으로 이루어진다.The deblocking filtering is composed of filtering on the vertical boundary of the macro block and filtering on the horizontal boundary. In the related art, as shown in FIG. 1, the deblocking filtering is performed on four vertical boundaries 11 of the macro block 10. The deblocking filter filtering process and the deblocking filtering process for the four horizontal boundaries 12 are all performed by a single processor.

그러나, 영상의 크기가 비약적으로 증가하는 근래의 고해상도 영상 데이터 처리에서는 상기와 같이 단일의 프로세서가 모든 디블록킹 처리를 수행하는 경우, 그 연산량이 방대해지고, 필터링 처리의 시간 지연이 발생하게 되어 실시간 연산 처리가 상당히 어렵다고 할 수 있으며, 또한, 디코딩의 경우 디블록킹 필터가 디코딩 전체 연산량의 30% 정도를 차지하므로 디코딩 자체의 실시간 구현이 어렵다고 할 수 있다.However, in the recent high resolution image data processing in which the size of the image is dramatically increased, when a single processor performs all the deblocking processing as described above, the computation amount is enormous and a time delay of the filtering process occurs, thereby real-time calculation. Processing is quite difficult, and in case of decoding, since the deblocking filter takes about 30% of the total amount of decoding, the real-time implementation of decoding itself is difficult.

실시간 처리를 위해서는 연산 수행 능력이 우수한 프로세서를 탑재하여야 하는데, 이러한 프로세서는 처리 능력의 증가와 대비하여 더욱 비약적으로 증대하는 고가의 비용이 소요되게 되므로 비경제적이라고 할 수 있으며, 또한 이러한 연산 수행 능력이 우수한 프로세서는 대단히 높은 구동 클럭이 요구되므로 하드웨어로의 구현 가능성이 더욱 낮다고 할 수 있다. Real-time processing requires a processor with excellent computational performance. Such a processor is inexpensive because it requires a high cost, which is dramatically increased compared to an increase in processing power. A good processor requires a very high driving clock, making it less likely to be implemented in hardware.

본 발명은 상기의 문제점을 해결하기 위하여 창안된 것으로서 영상 데이터에 대한 디블록킹 필터링 처리를 더욱 간단하고 효과적으로 수행할 수 있는 멀티 디블록킹 필터링 장치 및 방법은 제공하는 것에 목적이 있다.SUMMARY OF THE INVENTION An object of the present invention is to provide a multi-deblocking filtering device and method that can more easily and effectively perform deblocking filtering on image data.

또한, 상기와 같은 방법을 컴퓨터에서 구현하기 위하여 컴퓨터로 인식가능하고 실행되는 프로그램을 기록한 기록매체를 제공하는 데 목적이 있다.Another object of the present invention is to provide a recording medium on which a computer-readable program is executed so as to implement the method in a computer.

본 발명에 다른 목적 및 장점들은 하기에 설명될 것이며, 본 발명의 실시예에 의해 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구범위에 나타난 구성과 구성의 조합에 의해 실현될 수 있다.Other objects and advantages of the present invention will be described below and will be appreciated by the embodiments of the present invention. In addition, the objects and advantages of the present invention can be realized by the configuration and combination of configurations shown in the claims.

상기 목적을 달성하기 위한 본 발명의 멀티 디블록킹 필터링 장치는 매크로 블록의 경계를 대상으로 디블록킹 필터링을 수행하는 디블록킹 필터링 장치로서, 상기 매크로 블록의 n(n은 2이상의 자연수)개로 분할된 각 수직 경계를 대상으로 디블록킹 필터링을 수행하는 n개의 프로세서를 포함하도록 구성되며, 또한, 상기 n개의 프로세서는 상기 매크로 블록의 수직 경계에 대한 디블록킹 필터링이 완료된 후, 상기 매크로 블록의 n개로 분할된 각 수평 경계를 대상으로 디블록킹 필터링을 수행하도록 구성된다. The multi-deblocking filtering device of the present invention for achieving the above object is a deblocking filtering device for performing deblocking filtering on the boundary of the macroblock, each divided into n (n is a natural number of two or more) of the macroblock. And n processors for performing deblocking filtering on a vertical boundary, and the n processors are divided into n parts of the macroblock after the deblocking filtering on the vertical boundary of the macroblock is completed. And configured to perform deblocking filtering on each horizontal boundary.

한편, 본 발명의 다른 측면에 의한 목적을 달성하기 위한 멀티 디블록킹 필터링 방법은 상기 매크로 블록의 수직 경계를 n(n은 2이상의 자연수)개로 분할하는 수직경계 분할단계; n개의 프로세서가 상기 n개로 분할된 각 수직 경계를 대상으로 디블록킹 필터링을 수행하도록 제어하는 수직경계 제어단계; 상기 수직 경계에 대한 디블록킹 필터링이 완료된 후 상기 매크로 블록의 수평 경계를 n개로 분할하는 수평경계 분할단계; 및 상기 n개의 프로세서가 상기 n개로 분할된 각 수평 경계를 대상으로 디블록킹 필터링을 수행하도록 제어하는 수평경계 제어단계를 포함하여 구성된다. On the other hand, the multi-deblocking filtering method for achieving the object according to another aspect of the present invention includes a vertical boundary dividing step of dividing the vertical boundary of the macro block into n (n is a natural number of two or more); a vertical boundary control step of controlling n processors to perform deblocking filtering on the n divided vertical boundaries; A horizontal boundary dividing step of dividing the horizontal boundaries of the macro block into n after the deblocking filtering on the vertical boundaries is completed; And a horizontal boundary control step of controlling the n processors to perform deblocking filtering on the n horizontal boundaries.

상기 본 발명에 의한 디블록킹 필터링 장치 및 방법에 의하면, 디블록킹 필터링 연산의 대상이 되는 매크로 블록의 수직 경계 또는 수평 경계를 분할하여 개별 프로세서에 의하여 처리되도록 구성함으로써 더욱 신속하게 디블록킹 필터링 연산을 처리할 수 있는 효과를 제공하며, 이에 따라 고해상도 영상을 실시간으로 인코딩 또는 디코딩할 수 있는 효과를 창출할 수 있다.According to the apparatus and method for deblocking filtering according to the present invention, the deblocking filtering operation can be processed more quickly by dividing a vertical boundary or a horizontal boundary of a macroblock to be subjected to the deblocking filtering operation to be processed by a separate processor. It provides an effect that can be achieved, thereby creating an effect that can encode or decode a high resolution image in real time.

이와 더불어, 구비된 복수 개의 프로세서의 성능 상태를 효과적으로 연산 처리에 반영할 수 있어 더욱 유연하고 적응력 높은 장치 및 방법을 제공할 수 있음은 물론, 탑재된 프로세서의 구동 가능성 여부를 효과적으로 반영할 수 있어 더욱 탄력적인 디블록킹 필터링 연산 처리를 수행할 수 있다. In addition, it is possible to effectively reflect the performance state of the plurality of processors provided in the calculation process to provide a more flexible and adaptive device and method, as well as to effectively reflect whether the mounted processor can be driven. An elastic deblocking filtering operation may be performed.

또한, 상대적으로 낮은 구동 클럭을 이용할 수 있어 디블록킹 필터링 처리에 있어 더욱 안정적인 연산 수행이 가능하다.In addition, a relatively low driving clock can be used to enable more stable computation in the deblocking filtering process.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하 기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Prior to this, terms or words used in the present specification and claims should not be construed as being limited to the common or dictionary meanings, and the inventors should properly explain the concept of terms in order to best explain their own invention. Based on the principle that can be defined, it should be interpreted as meaning and concept corresponding to the technical idea of the present invention.

따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.Therefore, the embodiments described in the specification and the drawings shown in the drawings are only the most preferred embodiment of the present invention and do not represent all of the technical idea of the present invention, various modifications that can be replaced at the time of the present application It should be understood that there may be equivalents and variations.

또한, 영상 코덱은 다양한 표준에 의하여 적용되는데 본 발명의 설명에 있어 언급되거나 언급된 특정 표준은 본 발명의 설명의 효율성 및 이해의 편의성을 위한 것일 뿐 디블록킹 필터링 연산이 적용될 수 있는 표준이라면 특정 표준에 제한되지 않고 적용될 수 있다고 해석되어야 한다.In addition, the image codec is applied by various standards, and the specific standard mentioned or mentioned in the description of the present invention is only for the efficiency and understanding of the description of the present invention and is a standard to which the deblocking filtering operation can be applied. It should be construed that it can be applied without limitation.

본 발명이 적용될 수 있는 일 예인 상기 H.264의 디코딩 과정을 간략히 설명하면 다음과 같다. The decoding process of the H.264 as an example to which the present invention can be applied is briefly described as follows.

H.264의 디코딩 과정을 개략적으로 도시한 블록도인 도 2에 도시된 바와 같이 입력된 비트스트림은 엔트로피 복호기(entropy decoder)(20), 역양자화 주파수 변환부(30), 시간/공간 예측부(40)에 의한 프로세싱 후 디블록킹 필터링부(50)에 의한 디블록킹 필터링을 거쳐 복호 영상으로 출력되는 과정을 거치게 된다.As shown in FIG. 2, which is a block diagram schematically illustrating a decoding process of H.264, an input bitstream includes an entropy decoder 20, an inverse quantization frequency converter 30, and a temporal / spatial prediction unit. After the processing by 40, the deblocking filtering unit 50 performs deblocking filtering to output a decoded image.

상기 각 구성에서 행해지는 영상 처리 프로세싱은 본 발명의 특징과 직접적 인 관련이 없고, 이러한 프로세싱은 본 발명이 속한 기술분야에서 널리 알려진 영상 디코딩에 관한 처리로서 당업자에게 공지되어 있으므로 상세한 설명은 생략하며, 이하에서는 상기 구성 요소 중 본 발명의 기술 사상이 발현되는 디블록킹 필터링에 대한 상세한 설명을 첨부된 도면을 참조하여 설명하도록 한다.The image processing processing performed in each of the above configurations is not directly related to the features of the present invention. Since such processing is well known to those skilled in the art as processing related to image decoding, which is well known in the art to which the present invention belongs, the detailed description thereof will be omitted. Hereinafter, a detailed description of the deblocking filtering in which the technical spirit of the present invention is expressed among the above components will be described with reference to the accompanying drawings.

도 3은 본 발명의 바람직한 실시예에 의한 멀티 디블록킹 필터링 장치의 구성을 도시한 블록도이다. 도 3에 도시된 바와 같이 본 발명의 멀티 디블록킹 필터링 장치(100)는 입력부(110), 제어부(110), 제1프로세서(130), 제2프로세서(140) 및 모니터링부(150)를 포함하여 구성될 수 있다.3 is a block diagram showing the configuration of a multi-deblocking filtering device according to a preferred embodiment of the present invention. As shown in FIG. 3, the multi-deblocking filtering device 100 of the present invention includes an input unit 110, a control unit 110, a first processor 130, a second processor 140, and a monitoring unit 150. It can be configured.

상기 입력부(110)는 디블록킹 필터링을 위한 연산 단위인 매크로 블록에 대한 데이터를 입력받는 기능을 수행한다. 상기 디블록킹 필터링은 앞서 설명된 바와 같이 매크로 블록 단위로 처리되는데, 이와 관련하여 본 발명에서는 16×16의 크기를 가지는 매크로 블록을 기준으로 설명하나, 이는 본 발명의 하나의 실시예에 해당될 뿐 본 발명의 범주가 이에 제한되지 않는다고 해석되어야 한다. 즉, 상기 매크로 블록의 크기는 n×m(n,m은 2이상의 자연수)으로 구성될 수 있다.The input unit 110 performs a function of receiving data for a macro block, which is an operation unit for deblocking filtering. The deblocking filtering is processed on a macroblock basis as described above. In this regard, the present invention is described based on a macroblock having a size of 16 × 16, but this is only an example of the present invention. It should be understood that the scope of the present invention is not limited thereto. That is, the size of the macro block may be composed of n × m (n, m is a natural number of two or more).

상기 제어부(120)는 상기 입력된 매크로 블록의 수직 경계 또는 수평 경계가 n(n은 2이상의 자연수)개로 분할한다. n개의 프로세서는 상기와 같이 n개로 분할된 각 수직 경계 또는 각 수평 경계를 대상으로 디블록킹 필터링을 처리한다.The controller 120 divides the vertical boundary or horizontal boundary of the input macro block into n (n is a natural number of two or more). The n processors process the deblocking filtering on each of the n divided vertical boundaries or the horizontal boundaries.

제1프로세서(130), 제2프로세서(150) 및 모니터링부(150)의 상세한 내용은 후술한다.Details of the first processor 130, the second processor 150, and the monitoring unit 150 will be described later.

이하에서는 본 발명의 일 실시예에 따른 디블록킹 필터링 기법을 도식적으로 설명하는 도 4를 참조하여 상기의 과정을 더욱 상세히 설명한다. Hereinafter, the above process will be described in more detail with reference to FIG. 4, which schematically illustrates a deblocking filtering technique according to an embodiment of the present invention.

본 발명은 n개의 프로세서 또는 n개로 분할되는 수직 경계 또는 수평 경계로 구성되나, 설명의 효율성과 이해의 편의성을 높이기 위하여 도 4에서와 같이 2개의 프로세서 및 2개로 분할된 경계로 설명하도록 한다. The present invention is composed of n processors or n vertical boundaries or horizontal boundaries divided by n, but to be described as two processors and two divided boundaries as shown in Figure 4 in order to improve the efficiency and convenience of explanation.

도 4에 도시된 바와 같이 매크로 블록의 수직 경계(11)는 2개(11a 및 11b)로 분할되며, 제1프로세서(130)는 상기 분할된 11a에 해당하는 수직 경계를 대상으로 디블록킹 필터링을 수행하며, 제1프로세서와 독립된 제2프로세서(140)는 11b에 해당하는 수직경계를 대상으로 디블록킹 필터링을 수행한다.As shown in FIG. 4, the vertical boundary 11 of the macro block is divided into two 11a and 11b, and the first processor 130 performs deblocking filtering on the vertical boundary corresponding to the divided 11a. The second processor 140 independent of the first processor performs deblocking filtering on the vertical boundary corresponding to 11b.

디블록킹 필터링 처리는 일반적으로 16×16 크기의 매크로 블록에서 4개의 수직 경계와 4개의 수평 경계를 대상으로 필터링을 수행한다. 물론 상기 경계에 대한 구분도 스펙이나 적용 환경에 따라 달리 구성될 수 있다. The deblocking filtering process generally performs filtering on four vertical boundaries and four horizontal boundaries in a 16 × 16 macroblock. Of course, the boundaries for the boundary may be configured differently according to the specification or application environment.

이러한 디블록킹 필터링은 경계에 인접한 픽셀의 값을 이용하여 수학적 연산을 수행하게 되는데, 수직 경계를 대상으로 한 디블록킹 필터링 처리는 수직 경계를 중심으로 좌우로 인접한 픽셀들과의 수학적 연산을 통하여 수행한다. 그러므로 수직 경계 디블록킹 필터링 처리과정은 좌우측 픽셀의 값이 변화되게 되므로 좌측 수직 경계에 대한 연산이 완료되어야 그 다음 수직 경계의 연산이 수행된다.Such deblocking filtering performs a mathematical operation using the values of pixels adjacent to a boundary. Deblocking filtering processing for a vertical boundary is performed through mathematical operations with adjacent pixels left and right around a vertical boundary. . Therefore, in the vertical boundary deblocking filtering process, since the values of the left and right pixels are changed, the operation on the left vertical boundary is completed before the operation of the vertical boundary is performed.

즉, 도 4에 도시된 4개의 수직 경계 중 가장 좌측의 수직 경계를 시작으로 좌측에서 우측의 수직 경계 순으로 연산이 진행된다. 또한, 통상적으로 수직 경계에 대한 연산 순서는 상방향에서 하방향으로 진행되는 것이 일반적이나 수직 경계에 대한 디블록킹 필터링은 상하 픽셀과는 독립적이므로 상기 연산 순서를 달리하 여 하방향에서 상방향의 순서 또는 랜덤한 순서로 구성될 수도 있다.That is, the calculation proceeds in the order of the left to right vertical boundary, starting from the leftmost vertical boundary among the four vertical boundaries shown in FIG. 4. In addition, in general, the calculation order for the vertical boundary generally proceeds from the upper direction to the downward direction, but since the deblocking filtering for the vertical boundary is independent of the upper and lower pixels, the operation order for the vertical boundary is different from the downward direction. Or it may be configured in a random order.

디블록킹 필터링 과정은 수직 경계에 대한 디블록킹 필터링 과정이 모두 완료되면 완료된 매크로 블록의 픽셀들을 대상으로 수평 경계에 대한 디블록킹 필터링 과정을 수행하게 된다. In the deblocking filtering process, when all of the deblocking filtering processes for the vertical boundary are completed, the deblocking filtering process for the horizontal boundary is performed on the pixels of the completed macroblock.

수평 경계에 대한 디블록킹 필터링에 대한 연산 과정 및 순서 등은 앞서 설명한 수직 경계에 대한 디블록킹 필터링 과정과 유사하므로 중복되는 범위에서 그 설명을 생략하도록 한다. The operation process and order of deblocking filtering on the horizontal boundary are similar to the deblocking filtering process on the vertical boundary described above, and thus description thereof will be omitted in the overlapping range.

본 발명은 도 4에 도시된 바와 같이 독립된 2개의 프로세서(130, 140)가 분할된 각 수직 경계(11a, 11b)를 대상으로 개별적인 디블록킹 필터링 처리를 수행하며, 수직 경계에 대한 디블록킹 필터링이 완료되면, 상기 독립된 2개의 프로세서(130, 140)는 분할된 각 수평 경계인 12a, 12b를 대상으로 개별적인 디블록킹 필터링 처리를 수행한다. In the present invention, as shown in FIG. 4, two independent processors 130 and 140 perform separate deblocking filtering processing on each divided vertical boundary 11a and 11b, and deblocking filtering on the vertical boundary is performed. Upon completion, the two independent processors 130 and 140 perform separate deblocking filtering processing on the divided horizontal boundaries 12a and 12b.

상기 11a, 11b, 12a, 12b는 선후 관계 또는 우선 선위 등을 구분하기 위한 참조부호가 아니라 수직 경계 또는 수평 경계의 분할된 영역을 지칭하기 위한 개념일 뿐이므로 도 4에 도시된 바와 같이 11a를 대상으로 수직 경계 필터링을 수행하였던 제1프로세서는 12a, 12b 중 하나를 대상으로 수평 경계 필터링을 수행하게 된다. 11a, 11b, 12a, and 12b are not merely reference marks for distinguishing a posterior relationship or a priority line, but a concept for referring to divided regions of a vertical boundary or a horizontal boundary, and thus target 11a as shown in FIG. 4. As a result, the first processor that performs vertical boundary filtering performs horizontal boundary filtering on one of 12a and 12b.

상기 도 4는 독립된 2개 프로세서의 연산 처리 능력 또는 처리 속도가 동일하거나 유사한 경우에 해당되나 첨부된 도 5는 상기 2개 프로세서의 연산 처리 능력 또는 처리 속도가 동일하지 않은 경우의 실시형태를 도시하고 있다.FIG. 4 corresponds to a case where the computational processing power or processing speed of two independent processors is the same or similar, but the attached FIG. 5 illustrates an embodiment when the computational processing power or processing speed of the two processors is not the same. have.

실시형태에 따라 장치에 탑재되는 복수 개의 프로세서의 처리 능력 등이 동일하지 않을 수 있는데, 이러한 경우에도 균분된 수직 경계 또는 수평 경계에 대한 디블록킹 필터링을 각각 수행하는 경우 각 수직 경계 또는 수평 경계의 디블록킹 필터링 처리가 완료되는 종료 시점이 동일하지 않게 된다. Depending on the embodiment, the processing power and the like of the plurality of processors mounted in the apparatus may not be the same, and even in this case, when the deblocking filtering on the uniform vertical or horizontal boundaries is performed, The end time point at which the blocking filtering process is completed is not the same.

상기와 같이 종료 시점이 동일하지 않으면, 선 종료된 프로세서는 다른 프로세서의 필터링이 완료될 때까지 휴지기간을 가지게 되므로 연산 처리의 비효율성이 발생될 수 있다. 이러한 문제점을 효과적으로 극복하기 위하여 도 5에 도시된 바와 같이 수직 경계 또는 수평 경계를 프로세서 각각의 처리 속도 등의 비율에 따라 차등적으로 분할하고, 각 프로세서의 처리 속도에 해당하는 차등적으로 분할된 수직 경계 또는 수평 경계를 대상으로 연산을 수행한다.If the end points are not the same as described above, the pre-terminated processor has a rest period until the filtering of another processor is completed, which may cause inefficiency of the calculation process. In order to effectively overcome this problem, as shown in FIG. 5, the vertical boundary or the horizontal boundary is differentially divided according to the processing speed of each processor and the like, and the vertically divided vertically corresponding to the processing speed of each processor. Perform an operation on a boundary or horizontal boundary.

도 5에 하나의 실시예로 도시된 바와 같이 제1프로세서(130)의 처리 속도와 제2프로세서(140)의 처리 속도의 비가 1:3이라면, 수직 경계 또는 수평 경계 또한 1:3의 비율로 차등적으로 11c와 11d 또는 12c와 12d로 분할하고, 처리 속도가 상대적으로 낮은 제1프로세서(130)가 11c에 해당하는 수직 경계와 12d에 해당하는 수평경계를 대상으로 디블록킹 필터링을 처리한다. As shown in FIG. 5, when the ratio of the processing speed of the first processor 130 to the processing speed of the second processor 140 is 1: 3, the vertical boundary or the horizontal boundary may also be 1: 3. Divided into 11c and 11d or 12c and 12d differentially, the first processor 130 having a relatively low processing speed processes deblocking filtering on a vertical boundary corresponding to 11c and a horizontal boundary corresponding to 12d.

도 6은 본 발명의 n개의 프로세서가 4개인 경우의 차등적인 분할에 대한 예시로서, 도 6의 a, b, c, d는 1:2:2:4의 비율로 분할되는데, 이러한 경우는 4개의 프로세서의 처리 능력 또는 처리 속도의 비가 1:2:2:4인 경우에 해당한다고 할 수 있다.FIG. 6 is an example of differential division in the case of four n processors of the present invention. In FIG. 6, a, b, c, and d are divided in a ratio of 1: 2: 2: 4, and in this case, 4 It can be said that the ratio of the processing power or processing speed of the two processors is 1: 2: 2: 4.

이와 관련하여 디블록킹 필터링을 수행하는 연산 시간은 다음의 수식으로 표 현될 수 있다.In this regard, an operation time for performing deblocking filtering may be expressed by the following equation.

Figure 112008074387955-pat00001
Figure 112008074387955-pat00001

상기 수학식 1과 같이 디블록킹 필터링의 연산시간은 처리 대상이 되는 데이터의 크기와 처리 속도에 대한 비율로 결정되게 된다고 할 수 있다. As shown in Equation 1, the operation time of the deblocking filtering may be determined by the ratio of the size of the data to be processed and the processing speed.

앞서 설명된 바와 같이 프로세서의 처리 속도(처리 능력)가 동일하지 않는 경우라도 디블록킹 필터링이 완료되는 시간이 거의 일치되도록 구성하여야 효율성이 높아진다고 할 수 있다. As described above, even when the processing speeds (processing capacities) of the processors are not the same, it may be said that the efficiency is increased when the deblocking filtering time is completely matched.

즉, 도 7에 도시된 바와 같이 처리 프로세서 각각의 처리속도는 a < b < c의 순이며, 데이터의 크기는 A < B < C의 순인 경우, 처리속도a에 해당하는 프로세서1(#1)는 A크기 데이터를 처리하고, 처리속도 b에 해당하는 프로세서2(#2)는 B에 해당하는 데이터를 처리하며, 처리속도 c에 해당하는 프로세서3(#3)는 C에 해당하는 데이터를 처리하도록 구성하는 경우 각 프로세서(#1, #2, #3)의 연산 처리 시간은 아래의 수식과 같이 동일하게 된다.That is, as shown in FIG. 7, the processing speed of each of the processing processors is in order of a <b <c, and when the size of data is in order of A <B <C, processor 1 (# 1) corresponding to processing speed a Processes A size data, processor 2 (# 2) corresponding to processing speed b processes data corresponding to B, and processor 3 (# 3) corresponding to processing speed c processes data corresponding to C In this case, the operation processing times of the processors # 1, # 2, and # 3 are the same as in the following formula.

Figure 112008074387955-pat00002
Figure 112008074387955-pat00002

연산 처리 시간이 동일함은 도 7에 도시된 그래프의 기울기가 동일함으로도 확인할 수 있다.The same operation processing time may be confirmed by the same slope of the graph illustrated in FIG. 7.

한편, 본 발명은 제안하는 바와 같이 프로세서 n개가 필요하므로, 프로세서의 구동 불능, 오류 또는 고장 등이 발생할 확률이 상대적으로 높을 수 있다. 이러한 구동 불능 등의 상황이 발생한다는 것은 일부 분할된 수직 경계 또는 수평 경계에 대한 디블록킹 필터링이 수행되지 않는다는 것을 의미하는데 이러한 문제를 효과적으로 극복하기 위하여, 본 발명의 상기 모니터링부(150)는 상기 n개의 프로세서에 대한 구동 가능여부를 실시간 또는 주기적으로 모니터링한다. 상기 모니터링은 필터링 연산을 수행하기 전에 수행되도록 구성하는 것이 바람직하다.On the other hand, since the present invention requires n processors as proposed, the probability of occurrence of inoperability, error, or failure of the processor may be relatively high. The occurrence of such an inability to drive means that deblocking filtering is not performed on some divided vertical boundaries or horizontal boundaries. In order to effectively overcome this problem, the monitoring unit 150 of the present invention is the n Monitors whether the two processors can be driven in real time or periodically. The monitoring is preferably configured to be performed before performing the filtering operation.

본 발명의 제어부(120)는 상기 모니터링부(150)의 모니터링 결과 데이터를 입력받아 실제 구동 가능한 프로세서의 개수를 확인하고 이를 기초로 수직 경계 또는 수평 경계를 분할하고 분할된 각 수직 경계 또는 수평 경계를 대상으로 상기 구동 가능한 프로세서가 디블록킹 필터링을 수행하도록 제어한다. The control unit 120 of the present invention receives the monitoring result data of the monitoring unit 150 to check the number of processors that can be actually driven, and divides the vertical boundary or the horizontal boundary based on this, and divides each divided vertical boundary or the horizontal boundary. The controller may be configured to perform deblocking filtering.

이하에서는 첨부된 도 8 및 도 9를 참조하여 본 발명의 바람직한 실시예에 의한 멀티 디블록킹 필터링 방법의 과정을 설명하도록 한다. 앞서 설명된 본 발명의 멀티 디블록킹 필터링 장치와 관련하여 중복된 설명은 생략하나 본 발명의 멀티 디블록킹 필터링 방법에도 그대로 적용될 수 있음은 자명하다.Hereinafter, a process of a multi deblocking filtering method according to a preferred embodiment of the present invention will be described with reference to FIGS. 8 and 9. Duplicate description with respect to the multi-deblocking filtering device of the present invention described above will be omitted, but it is obvious that the present invention can be applied to the multi-deblocking filtering method of the present invention as it is.

도 8에 도시된 바와 같이 본 발명의 바람직한 일 실시예에 의한 멀티 디블록킹 필터링 방법은 우선 매트로 블록의 수직 경계를 n개로 분할한다(S110). 상기 n개는 디블록킹 필터링을 수행할 프로세서의 개수에 해당한다.As shown in FIG. 8, in the multi-deblocking filtering method according to an exemplary embodiment of the present invention, first, a vertical boundary of a macro block is divided into n units (S110). The n number corresponds to the number of processors to perform deblocking filtering.

상기와 같이 수직 경계에 대한 분할 과정이 완료되면, 디블록킹 필터링을 수행할 n개의 프로세서가 n개로 분할된 각 수직 경계를 대상으로 디블록킹 필터링을 수행하도록 제어하며(S120), 수직 경계에 대한 디블록킹 필터링 처리가 완료되면, 상기 수직 경계에 대한 디블록킹 필터링 처리가 완료된 매크로 블록의 수평 경계를 n개로 분할한다(S130).When the partitioning process for the vertical boundary is completed as described above, the n processors to perform deblocking filtering are controlled to perform deblocking filtering on each of the vertical boundaries divided into n (S120). When the blocking filtering process is completed, the horizontal boundary of the macroblock on which the deblocking filtering process for the vertical boundary is completed is divided into n (S130).

수평 경계에 대한 분할 처리가 완료되면, 디블록킹 필터링을 수행할 n개의 프로세서가 n개로 분할된 각 수평경계를 대상으로 디블록킹 필터링을 수행하도록 제어한다(S140).When the division processing for the horizontal boundary is completed, the n processors to perform the deblocking filtering are controlled to perform the deblocking filtering on each horizontal boundary divided into n (S140).

이하에서는 본 발명의 바람직한 다른 실시예에 의한 멀티 디블록킹 필링 방법에 따른 전반적인 과정에 대하여 상세히 설명하도록 하며, 도9에 표기된 단계에 대한 참조부호는 설명의 효율성을 높이기 위하여 도 8에 표기된 단계에 대한 참조부호와 동일하지 않게 표기되었을 뿐이며 동일 또는 유사한 기능을 수행하는 경우 동일 또는 유사한 단계에 해당된다고 해석되어야 한다. Hereinafter, the overall process according to the multi-deblocking peeling method according to another preferred embodiment of the present invention will be described in detail. Reference numerals to the steps shown in FIG. 9 refer to the steps indicated in FIG. 8 to increase the efficiency of the description. It should be construed that it is not indicated the same as the reference sign and that the same or similar steps are performed when performing the same or similar function.

도 9에 도시된 바와 같이 본 발명의 디블록킹 필터링 방법은 우선, n개의 프로세서에 대한 구동 상태를 모니터링한다(S200). 앞서도 설명된 바와 같이 필터링이 수행되기 전에 모니터링하는 것이 바람직하며 실시 형태에 따라 도 9에 일 실시예로 도시된 바와 같이 반드시 시계열상의 최우선으로 수행될 필요가 없음은 당업자에게 자명하다고 할 수 있다. As shown in FIG. 9, the deblocking filtering method of the present invention first monitors driving states of n processors (S200). As described above, it is preferable that monitoring is performed before filtering is performed, and it is obvious to those skilled in the art that it is not necessary to necessarily perform the highest priority on time series as shown in FIG. 9 according to an embodiment.

구동 가능한 프로세서의 개수가 확인되면, 상기 개수에 따라 매크로 블록의 수직 경계를 분할하고(S210), 상기 개수에 따라 분할된 각 수직 경계를 개별 프로세서가 디블록킹 필터링 처리하도록 제어하는데(S220) 모든 개별 프로세서가 좌에서 우방향으로 수직 경계에 대한 디블록킹 필터링 처리를 수행하도록 제어하여야 한다. When the number of processors that can be driven is determined, the vertical boundaries of the macroblocks are divided according to the number (S210), and the individual processors control the deblocking filtering process on each vertical boundary divided according to the number (S220). The processor should be controlled to perform the deblocking filtering process on the vertical boundary from left to right.

그 후, 개별 수직 경계에 대한 디블록킹 필터링 처리가 모두 완료되었는지 판단하고(S230), 모두 완료된 후, 수평 경계에 대한 디블록킹 필터링 처리를 수행하게 되는데, 상기 수평 경계에 대한 디블록킹 필터링 처리에 앞서 다시 구동 가능한 프로세서를 모니터링하는 단계를 수행할 수 있다.Thereafter, it is determined whether all of the deblocking filtering processes for the individual vertical boundaries are completed (S230), and after all of the deblocking filtering processes are completed, the deblocking filtering process for the horizontal boundary is performed, before the deblocking filtering process for the horizontal boundary. Monitoring the processor that can be restarted.

모니터링 결과가 수직 경계에 대한 모니터링 결과와 동일하다면 전술한 바와 같이 분할하여 디블록킹 필터링이 수행되도록 제어하면 되므로 별다른 문제점은 발생되지 않는다고 할 있으나, 만약 모니터링 결과가 수직 경계에 대한 모니터링 결과와 동일하지 않는 경우임에도 수직 경계에 대한 분할의 개수를 수평 경계에도 수정없이 적용한다면 수평 경계에 대한 디블록킹 필터링 처리에 오류가 발생할 수 있으므로 모니터링 결과를 기초로 수평 경계에 대한 분할의 개수를 수직 경계에 대한 분할의 개수와 다르게 조정가능하도록 구성하는 것이 바람직하다.If the monitoring result is the same as the monitoring result for the vertical boundary, it may be said that the problem is not caused because the deblocking filtering is controlled by dividing as described above, but the monitoring result is not the same as the monitoring result for the vertical boundary. In this case, if the number of divisions for the vertical boundary is applied without modification to the horizontal boundary, an error may occur in the deblocking filtering process for the horizontal boundary. It is preferable to be configured to be different from the number.

이러한 과정을 거쳐 수평 경계에 대한 분할 과정(S240)을 수행한 후 분할된 각 수평 경계를 대상으로 구동 가능한 각 개별 프로세서가 디블록킹 필터링 처리를 하도록 제어한다(S250).After performing the dividing process (S240) for the horizontal boundary through the above process, each individual processor capable of driving the divided horizontal boundaries is controlled to perform the deblocking filtering process (S250).

그 후, 상기 수평 경계에 대한 디블록킹 필터링 처리가 모두 완료되었는지 판단하고(S260) 모두 완료된 경우 하나의 매크로 블록을 대상으로 한 디블록킹 필터링 처리는 모두 종료하게 되며 후속 매크로 블록에 대한 상기와 같은 과정이 반복적으로 적용된다.Thereafter, it is determined whether all of the deblocking filtering processes for the horizontal boundary are completed (S260). When all of the deblocking filtering processes are completed, the deblocking filtering process for one macro block is terminated. This is applied repeatedly.

이상에서와 같이 본 발명에 따른 멀티 디블록킹 필터링 장치 등에 대하여 상 세히 기술하였으나, 상기 도 3에 도시된 본 발명에 의한 멀티 디블록킹 필터링 장치는 물리적으로 구분되는 구성요소라기보다는 논리적인 구성요소로 이해되어야 한다. 즉, 각각의 구성은 본 발명의 기술사상을 실현하기 위하여 논리적으로 구분된 구성요소에 해당하므로 각각의 구성요소가 통합 또는 분리되어 수행되더라도 본 발명의 논리 구성이 수행하는 기능을 실현할 수 있다면 본 발명의 범위 내에 있다고 해석되어야 한다.As described above, the multi-deblocking filtering device according to the present invention has been described in detail, but the multi-deblocking filtering device according to the present invention shown in FIG. 3 is understood as a logical component rather than a physically divided component. Should be. That is, since each configuration corresponds to logically divided components to realize the technical idea of the present invention, even if each component is integrated or separated, the present invention can realize the function performed by the logical configuration of the present invention. Should be interpreted to be within the scope of.

상술한 본 발명에 따른 멀티 디블록킹 필터링 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 장치에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 멀티 디블록킹 필터링 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The multi-deblocking filtering method according to the present invention described above may be embodied as computer readable codes on a computer readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer apparatus is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet). Include. The computer readable recording medium can also be distributed over network coupled computer devices so that the computer readable code is stored and executed in a distributed fashion. In addition, functional programs, codes, and code segments for implementing the multi-deblocking filtering method may be easily inferred by programmers in the art to which the present invention belongs.

이상에서 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내 에서 다양한 수정 및 변형이 가능함은 물론이다. Although the present invention has been described above by means of limited embodiments and drawings, the present invention is not limited thereto and will be described below by the person skilled in the art to which the present invention pertains. Of course, various modifications and variations are possible within the scope of the claims.

본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 전술된 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.The following drawings, which are attached to this specification, illustrate exemplary embodiments of the present invention, and together with the detailed description of the present invention serve to further understand the technical spirit of the present invention, the present invention includes matters described in such drawings. It should not be construed as limited to.

도 1은 종래 디블록킹 필터링에 대한 개략적인 과정을 도시한 도면,1 illustrates a schematic process for a conventional deblocking filtering;

도 2는 H.264의 디코딩 과정을 개략적으로 도시한 블록도,2 is a block diagram schematically illustrating a decoding process of H.264;

도 3은 본 발명의 바람직한 실시예에 의한 멀티 디블록킹 필터링 장치의 구성을 도시한 블록도,3 is a block diagram showing the configuration of a multi-deblocking filtering device according to a preferred embodiment of the present invention;

도 4는 본 발명의 일 실시예에 따른 디블록킹 필터링 기법을 도식적으로 설명한 도면,4 is a diagram schematically illustrating a deblocking filtering technique according to an embodiment of the present invention;

도 5는 본 발명의 다른 실시예에 따른 디블록킹 필터링 기법을 도식적으로 설명한 도면,5 is a diagram schematically illustrating a deblocking filtering technique according to another embodiment of the present invention;

도 6은 본 발명의 실시예에 따른 매크로 블록의 수직 경계에 대한 분할 방법을 도식적으로 설명한 도면,6 is a diagram schematically illustrating a division method for a vertical boundary of a macroblock according to an embodiment of the present invention;

도 7은 복수 개 프로세서의 처리 속도에 따른 차등적 경계 분할에 대한 상관 관계를 도시한 도면,FIG. 7 is a diagram illustrating a correlation between differential boundary partitioning according to processing speeds of a plurality of processors; FIG.

도 8은 본 발명의 바람직한 실시예에 의한 멀티 디블록킹 필터링 방법의 과정을 도시한 흐름도이다. 8 is a flowchart illustrating a process of a multi-deblocking filtering method according to a preferred embodiment of the present invention.

Claims (14)

매크로 블록의 경계를 대상으로 디블록킹 필터링을 수행하는 디블록킹 필터링 장치에 있어서,In the deblocking filtering apparatus for performing deblocking filtering on a boundary of a macroblock, 상기 매크로 블록의 수직 경계를 n(n은 2이상의 자연수)개로 분할하는 제어부; 및A control unit that divides the vertical boundary of the macro block into n (n is a natural number of two or more); And 상기 매크로 블록의 n개로 분할된 각 수직 경계를 대상으로 디블록킹 필터링을 수행하는 n개의 프로세서를 포함하고,N processors for performing deblocking filtering on the n vertical boundaries divided into n macroblocks of the macroblock, 상기 제어부는,The control unit, 상기 n개 프로세서 각각의 처리 속도가 동일한 경우 상기 수직 경계를 동일하게 n개로 분할하고, 상기 n개 프로세서 각각의 처리 속도가 동일하지 않은 경우 상기 수직 경계를 상기 처리 속도의 비에 대응되도록 차등적으로 n개로 분할하는 것을 특징으로 하는 멀티 디블록킹 필터링 장치.If the processing speed of each of the n processors is the same, the vertical boundary is divided equally into n. If the processing speed of each of the n processors is not the same, the vertical boundary is differentially applied to correspond to the ratio of the processing speeds. Multi-deblocking filtering device, characterized in that divided into n. 제 1항에 있어서, 상기 제어부는,The method of claim 1, wherein the control unit, 상기 매크로 블록의 수직 경계에 대한 디블록킹 필터링이 완료된 후, 상기 매크로 블록의 수평 경계를 n개로 분할하고,After the deblocking filtering on the vertical boundary of the macro block is completed, the horizontal boundary of the macro block is divided into n, 상기 n개의 프로세서는,The n processors, 상기 매크로 블록의 n개로 분할된 각 수평 경계를 대상으로 디블록킹 필터링을 수행하는 것을 특징으로 하는 멀티 디블록킹 필터링 장치.And deblocking filtering on n horizontal boundaries divided into n macroblocks of the macroblock. 삭제delete 제 2항에 있어서, 상기 제어부는,The method of claim 2, wherein the control unit, 상기 n개 프로세서 각각의 처리 속도가 동일한 경우 상기 수평 경계를 동일하게 n개로 분할하는 것을 특징으로 하는 멀티 디블록킹 필터링 장치.And dividing the horizontal boundary into n equally when the processing speeds of the n processors are the same. 삭제delete 제 2항에 있어서,3. The method of claim 2, 상기 n개 프로세서의 각각의 처리 속도가 동일하지 않은 경우 상기 수평 경계를 상기 처리 속도의 비에 대응되도록 차등적으로 n개로 분할하는 것을 특징으로 하는 멀티 디블록킹 필터링 장치.And when the processing speeds of the n processors are not the same, the horizontal boundary is divided into n differentially so as to correspond to the ratio of the processing speeds. 제 1항에 있어서,The method of claim 1, 상기 n개의 프로세서에 대한 구동 가능여부를 모니터링하고 모니터링 결과 데이터를 출력하는 모니터링부를 더 포함하고, It further comprises a monitoring unit for monitoring the drive availability of the n processors and outputs the monitoring result data, 상기 제어부는,The control unit, 상기 모니터링 결과 데이터에 기초하여 구동 가능한 프로세서의 개수로 상기 수직 경계를 분할하고 분할된 각 수직 경계를 대상으로 상기 구동 가능한 프로세서가 디블록킹 필터링을 수행하도록 제어하는 것을 특징으로 하는 멀티 디블록킹 필터링 장치.And dividing the vertical boundary by the number of processors that can be driven based on the monitoring result data, and controlling the driving processor to perform deblocking filtering on each divided vertical boundary. 제 2항에 있어서,3. The method of claim 2, 상기 n개의 프로세서에 대한 구동 가능여부를 모니터링하고 모니터링 결과 데이터를 출력하는 모니터링부를 더 포함하고, It further comprises a monitoring unit for monitoring the drive availability of the n processors and outputs the monitoring result data, 상기 제어부는,The control unit, 상기 모니터링 결과 데이터에 기초하여 구동 가능한 프로세서의 개수로 상기 수평 경계를 분할하고 분할된 각 수평 경계를 상기 구동 가능한 프로세서가 디블록킹 필터링을 수행하도록 제어하는 것을 특징으로 하는 멀티 디블록킹 필터링 장치.And dividing the horizontal boundary by the number of processors that can be driven based on the monitoring result data, and controlling the divided processors to perform deblocking filtering on each divided horizontal boundary. 매크로 블록의 경계를 대상으로 디블록킹 필터링을 수행하는 디블록킹 필터링 방법에 있어서,A deblocking filtering method for performing deblocking filtering on a boundary of a macroblock, 상기 매크로 블록의 수직 경계를 n(n은 2이상의 자연수)개로 분할하는 수직경계 분할단계; 및A vertical boundary dividing step of dividing a vertical boundary of the macro block into n (n is a natural number of two or more); And n개의 프로세서가 상기 n개로 분할된 각 수직 경계를 대상으로 디블록킹 필터링을 수행하도록 제어하는 수직경계 제어단계를 포함하고,a vertical boundary control step of controlling the n processors to perform deblocking filtering on each of the n divided vertical boundaries; 상기 n개 프로세서 각각의 처리 속도가 동일한 경우 상기 수직 경계는 동일하게 n개로 분할되고, 상기 n개 프로세서 각각의 처리 속도가 동일하지 않은 경우 상기 수직 경계는 상기 처리 속도의 비에 대응되도록 차등적으로 n개로 분할되는 것을 특징으로 하는 멀티 디블록킹 필터링 방법.When the processing speed of each of the n processors is the same, the vertical boundary is equally divided into n. When the processing speed of each of the n processors is not the same, the vertical boundary is differentially corresponding to the ratio of the processing speeds. Multi-deblocking filtering method characterized in that divided into n. 제 9항에 있어서,The method of claim 9, 상기 수직 경계에 대한 디블록킹 필터링이 완료된 후 상기 매크로 블록의 수평 경계를 n개로 분할하는 수평경계 분할단계; 및A horizontal boundary dividing step of dividing the horizontal boundaries of the macro block into n after the deblocking filtering on the vertical boundaries is completed; And 상기 n개의 프로세서가 상기 n개로 분할된 각 수평 경계를 대상으로 디블록킹 필터링을 수행하도록 제어하는 수평경계 제어단계를 더 포함하는 것을 특징으로 하는 멀티 디블록킹 필터링 방법.And a horizontal boundary control step of controlling the n processors to perform deblocking filtering on the n divided horizontal boundaries. 제 10항에 있어서, 상기 n개 프로세서 각각의 처리 속도가 동일한 경우 상기 수평 경계는 동일하게 n개로 분할되는 것을 특징으로 하는 멀티 디블록킹 필터링 방법.12. The method of claim 10, wherein the horizontal boundaries are equally divided into n when the processing speeds of the n processors are the same. 제 10항에 있어서,The method of claim 10, 상기 n개 프로세서 각각의 처리 속도가 동일하지 않은 경우 상기 수평 경계는 상기 처리 속도의 비에 대응되도록 차등적으로 n개로 분할되는 것을 특징으로 하는 멀티 디블록킹 필터링 방법.And when the processing speeds of the n processors are not the same, the horizontal boundary is divided into n differentially so as to correspond to the ratio of the processing speeds. 제 10항에 있어서,The method of claim 10, 상기 n개의 프로세서에 대한 구동 가능여부를 모니터링하고 모니터링 결과를 출력하는 모니터링단계를 더 포함하고, The method may further include a monitoring step of monitoring whether the n processors can be driven and outputting a monitoring result. 상기 수직 경계 또는 수평 경계는 상기 모니터링 결과 데이터에 기초하여 구동 가능한 프로세서의 개수로 상기 수직 경계 또는 수평경계를 분할되는 것을 특징으로 하는 멀티 디블록킹 필터링 방법.And the vertical boundary or horizontal boundary is divided into the vertical boundary or the horizontal boundary by the number of processors which can be driven based on the monitoring result data. 삭제delete
KR1020080105323A 2008-10-27 2008-10-27 Multi deblocking filtering device and method KR101063420B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080105323A KR101063420B1 (en) 2008-10-27 2008-10-27 Multi deblocking filtering device and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080105323A KR101063420B1 (en) 2008-10-27 2008-10-27 Multi deblocking filtering device and method

Publications (2)

Publication Number Publication Date
KR20100046473A KR20100046473A (en) 2010-05-07
KR101063420B1 true KR101063420B1 (en) 2011-09-07

Family

ID=42273729

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080105323A KR101063420B1 (en) 2008-10-27 2008-10-27 Multi deblocking filtering device and method

Country Status (1)

Country Link
KR (1) KR101063420B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019199151A1 (en) * 2018-04-13 2019-10-17 엘지전자 주식회사 Image encoding/decoding method and device therefor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040228415A1 (en) 2003-05-13 2004-11-18 Ren-Yuh Wang Post-filter for deblocking and deringing of video data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040228415A1 (en) 2003-05-13 2004-11-18 Ren-Yuh Wang Post-filter for deblocking and deringing of video data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019199151A1 (en) * 2018-04-13 2019-10-17 엘지전자 주식회사 Image encoding/decoding method and device therefor

Also Published As

Publication number Publication date
KR20100046473A (en) 2010-05-07

Similar Documents

Publication Publication Date Title
KR101974261B1 (en) Encoding method and apparatus comprising convolutional neural network(cnn) based in-loop filter, and decoding method and apparatus comprising convolutional neural network(cnn) based in-loop filter
WO2020253828A1 (en) Coding and decoding method and device, and storage medium
KR101298389B1 (en) Method and system for video coder and decoder joint optimization
US10225555B2 (en) Method and apparatus for multi-table based context adaptive binary arithmetic coding
CN110622515A (en) Directional intra prediction coding
CN104247429A (en) Method and apparatus for sample adaptive offset coding with separate sign and magnitude
US20120263225A1 (en) Apparatus and method for encoding moving picture
JP2024036568A (en) Method and device for filtering video
CN116349225B (en) Video decoding method and device, electronic equipment and storage medium
JP2023512898A (en) Method and apparatus for offset in video filtering
JP2023532397A (en) Content-adaptive online training method, apparatus and computer program for post-filtering
JP6985546B2 (en) Image decoder, image decoding method and program
KR101063420B1 (en) Multi deblocking filtering device and method
JP7509916B2 (en) Method, apparatus and program for boundary processing in video encoding
US8503537B2 (en) System, method and computer readable medium for decoding block wise coded video
WO2021263251A1 (en) State transition for dependent quantization in video coding
CN115209157A (en) Video encoding and decoding method and device, computer readable medium and electronic equipment
EP3149943B1 (en) Content aware scheduling in a hevc decoder operating on a multi-core processor platform
WO2023051222A1 (en) Filtering method and apparatus, encoding method and apparatus, decoding method and apparatus, computer-readable medium, and electronic device
TWI832661B (en) Methods, devices and storage media for image coding or decoding
WO2022217417A1 (en) Encoding method, decoding method, encoder, decoder and storage medium
WO2022037478A1 (en) Video decoding method, video encoding method, apparatus, medium, and electronic device
EP3571844A1 (en) Apparatus and method for de-blocking filtering
KR101364086B1 (en) Video decoding method, and video decoding apparatus
WO2023168257A2 (en) State transition of dependent quantization for aom enhanced compression model

Legal Events

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

Payment date: 20140703

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160602

Year of fee payment: 5

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20160901

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170703

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee