KR101584420B1 - 디블록킹 필터링 제어 - Google Patents

디블록킹 필터링 제어 Download PDF

Info

Publication number
KR101584420B1
KR101584420B1 KR1020137025374A KR20137025374A KR101584420B1 KR 101584420 B1 KR101584420 B1 KR 101584420B1 KR 1020137025374 A KR1020137025374 A KR 1020137025374A KR 20137025374 A KR20137025374 A KR 20137025374A KR 101584420 B1 KR101584420 B1 KR 101584420B1
Authority
KR
South Korea
Prior art keywords
pixel
block
pixels
value
line
Prior art date
Application number
KR1020137025374A
Other languages
English (en)
Other versions
KR20130139341A (ko
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=45496239&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101584420(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 텔레폰악티에볼라겟엘엠에릭슨(펍) filed Critical 텔레폰악티에볼라겟엘엠에릭슨(펍)
Publication of KR20130139341A publication Critical patent/KR20130139341A/ko
Application granted granted Critical
Publication of KR101584420B1 publication Critical patent/KR101584420B1/ko

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
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

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

Abstract

제1필터 결정 값이 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내에서 화소(11, 13, 15)의 화소 값에 기반해서, 비디오 프레임 내의 화소(11, 13, 15, 17)의 블록(10)에 대해서 계산된다. 제2필터 결정 값이 비디오 프레임 내의 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내에서 화소(21, 23, 25, 27)의 화소 값에 기반해서, 블록(10)에 대해서 계산된다. 제1필터 결정 값은, 블록(10)과 인접한 블록(20) 간의 블록 바운더리(1)에 대해서 필터링 하기 위해 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내의 얼마나 많은 화소를 결정하는데 사용된다. 제2필터 결정 값은, 블록 바운더리(1)에 대해서 필터링하기 위해서인접한 블록 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 얼마나 많은 화소를 필터링할지를 결정하는데 사용된다.

Description

디블록킹 필터링 제어{Deblocking filtering control}
일반적으로, 본 발명의 실시형태는 필터링 제어에 관한 것으로, 특히 비디오 프레임 내의 블록 바운더리에 걸친 디블록킹 필터링 제어에 관한 것이다.
디블록킹 필터는, 블록킹 아티팩트를 방지하기 위해 비디오 코딩 기준에서 사용된다. 블록킹 아티팩트는, 오리지널의 비디오 프레임들이 비교적 독립적으로 처리되는 블록으로 분할되기 때문에, 발생한다. 이 블록킹 아티팩트는, 예를 들어 블록의 다른 인트라 예측(intra prediction), 양자화 효과 및 모션 보상에 기인해서 발생할 수 있다. 디블록킹의 2개의 특정한 변형이, 이하 개시된다.
H.264와 같은 비디오 코딩의 기술에 있어서는, 후속하는 프레임을 인코딩 또는 디코딩할 때, 예측 및 잔여의 복원 후지만, 복원의 나중의 참조를 위한 기억 전에, 루프 필터로도 표시되는 디블록킹 필터(deblocking filter)가 있게 된다. 이 디블록킹 필터링은, 필터 결정, 필터링 연산, 클리핑 기능(clipping function) 및 화소 값의 변경과 같은 다수의 단계로 이루어진다. 경계를 필터링할지에 대한 결정은, 다수 조건의 평가에 기반한다. 필터링의 결정은, 매크로블록(MB) 타입, 인접한 블록 간의 모션 벡터(MV) 차이, 인접한 블록이 잔여를 코딩했는지에 의존하고, 현재 및/또는 인접한 블록의 로컬 구조에 의존한다.
그 다음, 화소에 대한 필터링의 양은, 그 밖의 것보다, 블록 경계 또는 바운더리에 대한 그 화소의 위치 및, 잔여의 코딩을 위해 사용된 양자화 파라미터(QP) 값에 의존한다.
필터 결정은, 3개의 화소의 차이와 3개의 문턱 간의 비교에 기반한다. 문턱은 양자화 파라미터(QP)에 적용된다. 예를 들어, 수직의 블록 바운더리가,
abcd|efgh
로 상정되고, 여기서, a, b, c 및 d는 현재 블록 내의 화소 열(row)의 화소의 화소 값을 표시하고, e, f, g 및 h는 인접한 블록 내의 대응하는 화소 열의 화소의 대응하는 화소 값을 표시한다. 이하의 조건이 충족되면, 필터 결정은 포지티브(positive), 예를 들어 abs(d-e)<thr1, abs(c-d)<thr2이고, abs(e-f)<thr2이며, 여기서 thr1 및 thr2는 QP에 기반한다.
H.264에는 2개의 필터링 모드가 있다. 정상 필터링으로 언급되는 제1필터링 모드에 있어서는, 필터링은, 필터링이 현재 값을 변경하는 델타(delta) 값으로 기술될 수 있다. 블록 바운더리에 가장 근접한 화소를 위한 필터링은 d' = d + delta 및 e' = e - delta이며, 여기서 델타(delta)는, QP로 제약되는 값으로, 문턱 ±thr3으로 클립 오프(clipped off)된다. 이에 의해, 추가의 필터링이 낮은 QP보다 높은 QP에 대해서 허용된다. 클리핑은 delta_clipped = max(-thr3, min(thr3, delta))로 기술될 수 있고, 여기서 thr3는 필터 강도를 제어한다. thr3의 더 큰 값은, 필터링이 더 강한(stronger) 것을 의미하는데, 이 더 강한(stronger)은 더 강한 로우-패스 필터링 효과가 발생되는 것을 의미한다.
필터 강도는, 소정의 다음의 2개의 조건이 유지되면, 예를 들어 abs(b-d)<thr2이고, abs(e-g)<thr2이면, 증가될 수 있다. 필터 강도는, 델타(delta)가 없게 델타를 클리핑함으로써, 예를 들어 추가의 변동을 허용하도록 적용된다.
강한 필터링(strong filtering)으로도 업급되는 제2필터링 모드는, 다음 조건이 abs(d-e)<thr1/4을 충족할 때만, 인트라 매크로블록 바운더리에 대해서 적용된다.
H.264 참조에 있어서, 디블록킹 필터링의 더 많은 정보가, Adaptive Deblocking Filter, IEEE Transantions on Circuits and Systems for Video Technology, vol. 13, no. 7, July 2003 등에 언급된다.
드라프트 HEVC(High Efficiency Vedio Coding) 명세서 "Test Model under Consideration", ITU-T SG16 WP3 document, JCTVC-B205, Chapter 6.5 In-loopfilter process에 있어서, 디블록킹 필터는 H.264와 다르게 작업한다. 필터링은, 바운더리의 측면 상의 적어도 하나의 블록이 인트라이거나, 비제로(non-zero) 계수를 가지면, 또는 블록의 모션 벡터 성분 간의 차이가 하나의 정수 화소보다 크거나 동등하면, 수행된다. 예를 들어,
p3i p2i p1i p0i | q0i q1i q2i q3i
의 수직의 블록 바운더리를 갖는 블록 간의 경계를 필터링할 때, pji는 현재 블록 내의 열 번호 i의 화소 번호 j의 화소 값을 표시하고, qji는 인접한 블록, i=0... 7, j=0...3, 내의 열 번호 i의 화소 번호 j의 화소 값을 표시하면, 다음의 조건이 만족되어야 한다:
d = |p22 - 2×p12 + p02| + |q22 - 2×p12 + q02| + |p25 - 2×p15 + p05| + |q25 - 2×p15 + q05|<β
여기서, β는 QP에 의존한다. 상기된 HEVC 명세서에 있어서는, β의 테이블이 있는데, 여기서 β는 QP로 증가한다.
조건이 충족되고, 필터링이 현재 블록과 인접한 블록 사이에서 수행되면, 약한 및 강한 필터링으로 각각 언급되는, 2개의 타입 중 한 타입의 필터링이 수행된다. 강한 및 약한 필터링 간의 선택이 이하의 조건에 의존해서 각각의 라인에 대해서 분리해서 수행된다. 각각의 라인 i=0...7에 대해서, 강한 필터링은 이하의 조건이 참이면, 수행되고 그렇지 않으면, 약한 필터링이 수행된다:
d< (β>>2)
(|p3i - p0i| + |q0i - q3i|) <(β>>3)
|p0i - q0i| <((5×tC + 1)>>1)
여기서, tC 및 β는 QP에 의존하고, >>는 우측 시프트 연산자이다.
약한 필터링은 상기 조건에 기반해서 수행된다. 실재적인 필터링은 오프셋(△)를 계산하고, 이를 오리지널의 화소 값에 가산하며, 이 합을 0-255 범위 내의 필터링된 출력 화소 값으로 클립(Clip)함으로써 수행된다:
△ = Clip(-tC,tC,(13×q0i - p0i) + 4×(q1i - p1i) - 5×(q2i - p2i)+16)>>5))
p0i = Clip0 -255(p0i + △)
q0i = Clip0 -255(q0i - △)
p1i = Clip0 -255(p1i + △/2)
q1i = Clip0 -255(q1i - △/2)
여기서, 클립 함수 Clip(A, B, x)는 Clip(A, B, x)=A if x<A이고, Clip(A, B, x)=B if x>B이며, Clip(A, B, x)=x if A≤x≤B로 규정되고, Clip0 -255(x)는 Clip(0, 255, x)로 규정된다.
강한 필터링 모드는 이하의 연산 세트에 의해 수행된다:
p0i=Clip0 -255((p2i + 2×p1i + 2×p0i +2×p0i + q1i + 4)>>3)
q0i=Clip0 -255((p1i + 2×p0i + 2×q0i + 2×q1i + q2i + 4)>>3)
p1i=Clip0 -255((p2i + p1i + p0i + q0i +2)>>2)
q1i=Clip0 -255((p0i + q0i + q1i + q2i +2)>>2)
p2i=Clip0 -255((2×p3i + 3×p2i + p1i + p0i + q0i + 4)>>3)
q2i=Clip0 -255((p0i + q0i + q1i + 3×q2i + 2×q3i + 4)>>3)
HEVC에 따른 디블록킹 필터링은 소정 블록에 대한 블록 바운더리에 걸쳐서 부정확한 디블록킹 필터링을 이끌어 낼 수 있다. 특히, 다른 레벨의 로컬 구조를 갖는 인접한 블록은, 블록 중 하나를 너무 많이 필터링하여, 이에 의해 블록 내의 로컬 구조를 억압하고 필터 어웨이(filter away)함으로써, HEVC에서 부정확하게 조작될 수 있다.
그러므로, 블록 바운더리에서 블록킹 아티팩트를 감소시키고 상기된 단점을 갖지 않는 효과적인 디블록킹 필터링 제어가 필요하다.
본 발명의 일반적인 목적은, 효과적인 디블록킹 필터링 제어를 제공하는 것이다.
본 발명의 특정 목적은, 블록 바운더리에 걸쳐서 비대칭의 필터링 결정을 제공하는 것이다.
실시형태의 일측면은, 각각의 화소가 각각 화소 값을 갖는, 비디오 프레임 내의 다중 화소의 블록에 적용 가능한 필터링 제어를 위한 방법에 관한 것이다. 이 방법은, |p2i-2p1i+p0i|에 적어도 기반해서 블록에 대한 제1필터 결정 값을 계산하는 단계로서, p0i는 블록 내의 화소의 제1라인 내에서 비디오 프레임 내의 다중 화소의 인접한 블록에 대한 블록 바운더리에 가장 근접한 화소의 화소 값을 나타내고, p1i는 화소의 제1라인 내에서 블록 바운더리에 다음의 가장 근접한 화소의 화소 값을 나타내며, p2i는 화소의 제1라인 내에서 블록 바운더리에 제2의 다음의 가장 근접한 화소의 화소 값을 나타내는, 계산하는 단계를 포함하여 구성된다. 또한, 본 방법은, |q2i-2q1i+q0i|에 적어도 기반해서 블록에 대한 제2필터 결정 값을 계산하는 단계로서, q0i는 인접한 블록 내의 화소의 대응하는 제1라인 내에서 블록 바운더리에 가장 근접한 인접한 블록 내의 화소의 화소 값을 나타내고, q1i는 화소의 대응하는 제1라인 내에서 블록 바운더리에 다음의 가장 근접한 인접한 블록 내의 화소의 화소 값을 나타내며, q2i는 화소의 대응하는 제1라인 내에서 블록 바운더리에 제2의 다음의 가장 근접한 인접한 블록 내의 화소의 화소 값을 나타내는, 계산하는 단계를 포함하여 구성된다. 제1필터 결정 값은, 블록 내의 화소의 라인 내의 얼마나 많은 화소를 블록 바운더리에 대해서 필터링할지를 결정하기 위해 사용되고, 대응해서 제2필터 결정 값은, 인접한 블록 내의 화소의 대응하는 라인 내의 얼마나 많은 화소를 블록 바운더리에 대해서 필터링할지를 결정하기 위해 사용된다.
실시형태의 다른 측면은, 필터링 제어 장치를 규정하고, 이 필터링 제어 장치는: |p2i-2p1i+p0i|에 적어도 기반해서, 비디오 프레임 내의 다중 화소의 블록에 대한 제1필터 결정 값을 계산하도록 구성된 제1결정 값 계산기로서, p0i는 상기 블록 내의 화소의 제1라인 내에서 비디오 프레임 내의 다중 화소의 인접한 블록에 대한 블록 바운더리에 가장 근접한 화소의 화소 값을 나타내고, p1i는 화소의 제1라인 내에서 블록 바운더리에 다음의 가장 근접한 화소의 화소 값을 나타내며, p2i는 화소의 제1라인 내에서 블록 바운더리에 제2의 다음의 가장 근접한 화소의 화소 값을 나타내는, 제1결정 값 계산기를 포함하여 구성된다. 또한, 필터링 제어 장치는, |q2i-2q1i+q0i|에 적어도 기반해서 블록에 대한 제2필터 결정 값을 계산하도록 구성된 제2결정 값 계산기로서, q0i는 인접한 블록 내의 화소의 대응하는 제1라인 내에서 블록 바운더리에 가장 근접한 인접한 블록 내의 화소의 화소 값을 나타내고, q1i는 화소의 대응하는 제1라인 내에서 블록 바운더리에 다음의 가장 근접한 인접한 블록의 화소의 화소 값을 나타내며, q2i는 화소의 대응하는 제1라인 내에서 블록 바운더리에 제2의 다음의 가장 근접한 인접한 블록 내의 화소의 화소 값을 나타내는, 제2결정 값 계산기를 포함하여 구성된다. 제1화소 결정기는, 제1결정 값 계산기에 의해 계산된 제1필터 결정 값에 기반해서, 블록 내의 화소의 라인 내의 얼마나 많은 화소를 블록 바운더리에 대해서 필터링할지를 결정하도록 구성된다. 더욱이, 제2화소 결정기는, 제2결정 값 계산기에 의해 계산된 제2필터 결정 값에 기반해서, 인접한 블록 내의 화소의 대응하는 라인 내의 얼마나 많은 화소를 블록 바운더리에 대해서 필터링할지를 결정하도록 구성된다.
실시형태의 또 다른 측면은, 상기 규정된 바와 같은 필터링 제어 장치를 포함하여 구성되는 인코더와, 상기 규정된 바와 같은 필터링 제어 장치를 포함하여 구성되는 디코더에 관한 것이다. 또 다른 측면은, 비디오 프레임을 기억하도록 구성된 메모리와; 비디오 프레임을 메모리 내에 기억된 인코딩된 비디오 프레임으로 인코딩하도록 상기 규정된 필터링 장치를 갖춘 인코더를 포함하여 구성된 사용자 장치를 규정한다. 또 다른 측면은, 인코딩된 비디오 프레임을 기억하도록 구성된 메모리와; 인코딩된 비디오 프레임을 디코딩된 비디오 프레임으로 디코딩하도록 상기 규정된 필터링 제어 장치를 구비한 디코더를 포함하여 구성되는 사용자 장치를 규정한다. 사용자 장치의 미디어 플레이어는, 디코딩된 비디오 프레임을 디스플레이 상에서 디스플레이 가능한 비디오 데이터로 렌더링하도록 구성된다.
또 다른 측면은, 비디오 프레임 내의 다중 화소의 블록의 필터링 제어를 위한 컴퓨터 프로그램에 관한 것으로, 각각의 화소는 각각 화소 값을 갖는다. 컴퓨터 프로그램은, 컴퓨터 상에서 구동할 때, 컴퓨터가, |p2i-2p1i+p0i|에 적어도 기반해서 블록에 대한 제1필터 결정 값을 계산하도록 하는 코드 수단을 포함하여 구성되고, p0i는 블록 내의 화소의 제1라인 내에서 비디오 프레임 내의 다중 화소의 인접한 블록에 대한 블록 바운더리에 가장 근접한 화소의 화소 값을 나타내고, p1i는 화소의 제1라인 내에서 블록 바운더리에 다음의 가장 근접한 화소의 화소 값을 나타내며, p2i는 화소의 제1라인 내에서 블록 바운더리에 제2의 다음의 가장 근접한 화소의 화소 값을 나타낸다. 또한, 컴퓨터 프로그램은, 컴퓨터가, |q2i-2q1i+q0i|에 적어도 기반해서 블록에 대한 제2필터 결정 값을 계산하도록 하는 코드 수단을 포함하여 구성되고, q0i는 인접한 블록 내의 화소의 대응하는 제1라인 내에서 블록 바운더리에 가장 근접한 인접한 블록 내의 화소의 화소 값을 나타내고, q1i는 화소의 대응하는 제1라인 내에서 블록 바운더리에 다음의 가장 근접한 인접한 블록 내의 화소의 화소 값을 나타내며, q2i는 화소의 대응하는 제1라인 내에서 블록 바운더리에 제2의 다음의 가장 근접한 인접한 블록 내의 화소의 화소 값을 나타낸다. 컴퓨터 프로그램은, 컴퓨터가, 제1필터 결정 값에 기반해서, 블록 내의 화소의 라인 내의 얼마나 많은 화소를 상기 블록 바운더리에 대해서 필터링할지를 결정하고, 제2필터 결정 값에 기반해서, 인접한 블록 내의 화소의 대응하는 라인 내의 얼마나 많은 화소를 블록 바운더리에 대해서 필터링할지를 결정하도록 하는 코드 수단을 포함하여 구성된다.
본 실시형태는, 블록 바운더리의 각각의 측면 상에서 구조에 적용될 수 있는 디블록킹 필터링을 제어하는 비대칭의 디블록킹 결정을 달성한다. 비대칭의 결정은, 블록 바운더리의 일측면에 적용된 필터링 양이 블록 바운더리의 다른 측면에 적용된 필터링 양과 다를 수 있으며, 따라서 로컬 구조에 대한 추가적인 적용을 제공하는 것을 의미한다. 이는 주관적 및 객관적으로 비디오 품질을 개선한다.
본 발명은, 또 다른 목적 및 장점과 함께, 첨부 도면에 따른 이하의 상세한 설명을 참조로 이해되는데, 도면에서:
도 1은 실시형태에 따른 필터링 제어를 위한 방법을 도시한 흐름도;
도 2a 및 도 2b는 디블록킹 필터링이 적용될 수 있는, 인접한 블록 및 블록 바운더리의 2개의 실시형태를 도시한 도면;
도 3은 실시형태에 따른 도 1의 방법의 추가적인 선택적인 단계를 도시한 흐름도;
도 4는 도 1의 결정 단계의 실시형태를 나타낸 도면,
도 5는 다른 실시형태에 따른 도 1의 방법의 추가적인, 선택적인 단계를 도시한 흐름도;
도 6은 도 1의 방법의 추가적인, 선택적인 단계 및 도 1의 결정 단계의 실시형태를 도시한 흐름도;
도 7은 실시형태에 따른 도 1의 방법의 추가적인, 선택적인 단계를 도시한 흐름도;
도 8은 필터링 제어 장치의 실시형태의 개략적인 블록도;
도 9는 필터링 제어 장치의 다른 실시형태의 개략적인 블록도;
도 10은 필터링 제어 장치의 또 다른 실시형태의 개략적인 블록도;
도 11은 필터링 제어 장치의 또 다른 실시형태의 개략적인 블록도;
도 12는 실시형태에 따른 컴퓨터 내의 필터링 제어 장치의 스프트웨어 실행의 개략적인 블록도;
도 13은 실시형태에 따른 인코더의 개략적인 블록도;
도 14는 실시형태에 따른 디코더의 개략적인 블록도;
도 15는 실시형태에 따른 사용자 장치의 개략적인 블록도;
도 16은 다른 실시형태에 따른 사용자 장치의 개략적인 블록도;
도 17은 실시형태에 따른 네트워크 장치를 포함하여 구성되는 통신 네트워크의 전체 부분도이다.
도면을 통해서, 유사한 또는 대응하는 엘리먼트에는 동일한 참조 번호를 사용했다.
일반적으로, 본 실시형태는, 비디오 프레임 내의 블록 바운더리에 걸친 필터링 제어 및 디블록킹 필터링 제어에 관한 것이다. 본 실시형태의 필터링 제어는, 블록 바운더리에 의해 분리된 화소의 블록에 대해서 독립적인 필터링 결정을 함으로써 블록 바운더리에 대해서 비대칭의 디블록킹 결정을 제공한다. 이 의미는, 디블록킹 필터링이 로컬 구조의 다른 레벨을 갖는 인접한 블록을 핸들링할 수 있어, 이에 의해 그 로컬 구조에 기반해서 각각의 블록에서, 특정한 디블록킹 필터링을 적용하게 하는 것이다.
종래 기술에서 널리 공지된 바와 같이, 비디오 프레임은 다양한 이용 가능한 인트라 및 인터 코딩 모드에 따라서 인코딩 및 디코딩된 화소의 비-중복의 블록으로 분할된다. 일반적으로, 비디오 프레임은, 16×16 화소의 비-중복 매크로블록으로 분할된다. 이러한 매크로블록은, 차례로 4×4 또는 8×8 화소와 같은 다른 사이즈의 더 작은 블록으로 분할될 수 있다. 그런데, 4×8, 8×4, 8×16 또는 16×8과 같은, 본 실시형태에 직사각형 블록도 가능할 수 있다. 본 실시형태는, 매크로블록 또는 심지어 더 큰 화소 블록을 포함하는, 소정의 이러한 화소 블록에 적용될 수 있다.
최근 생겨난 HEVC(High Efficiency Vedio Coding) 기준에 있어서는, 코딩 유닛(CU), 예측 유닛(PU) 및 변환 유닛(TU)이 사용된다. 이 예측 유닛은 코딩 유닛 내측에 규정되고, 인트라 또는 인터 예측 모드를 포함한다. 변환 유닛은 코딩 유닛 내측에 규정되고 가장 큰 변환 사이즈가 32×32 화소이며, 가장 작은 사이즈가 4×4 화소이다. CU 사이즈는, 현재, 64×64 화소(가장 큰)로부터 8×8화소(가장 작은)로 변하고 있다. 이 방법에서, 가장 큰 CU는, 프레임의 로컬 특성에 의존하는 "입상(granularity)의 레벨"로, 더 작은 CU로 분할될 수 있다. 이는, 가장 큰 CU가 다른 사이즈의 더 작은 CU로 분할될 수 있는 것을 의미한다. 또한, 본 실시형태는 이러한 코딩 유닛과 연관해서 사용될 수 있는데, 이 코딩 유닛은 본 명세서에서 사용됨에 따라 표현 "화소의 블록"에 의해 포함되는 것으로 간주된다.
블록 내의 각각의 화소는 각각의 화소 값을 갖는다. 일반적으로, 비디오 프레임은 화소에 할당되는 컬러 값을 갖는데, 여기서 이 컬러 값은 규정된 컬러 포맷 내에 표현된다. 하나의 공통의 컬러 포맷은, 각각의 화소에 대해서 하나의 휘도 성분과 2개의 색차 성분을 사용하지만, 각각의 화소에 대해서 레드, 그린 및 블루 성분을 사용하는 것과 같은 다른 포맷들이 존재할 수 있다.
통상적으로, 휘도 성분 필터링 및 색차 성분 필터링은, 다른 필터링 결정 및 다른 디블록킹 필터를 채용해서 가능하게는 분리해서 수행한다. 하지만, 휘도 필터링 결정이, H.264에서와 같이, 크로마 필터링(chroma filtering)에서 사용되는 것도 가능하다. 본 실시형태는, 휘도 성분이나, 색차 성분 또는 휘도 성분 및 색차 성분 모두에 대한 필터링 제어에 적용할 수 있다. 특정한 실시형태에 있어서, 본 실시형태는 휘도 또는 루마 필터링(luma filtering)을 제어하기 위해 적용된다. 그 다음, 루마(luma)와 같은, 하나의 성분에 대한 필터링 결정 또는 필터링 결정의 부분은, 크로마(chroma)와 같은, 다른 성분에 대한 필터링 결정을 만들 때, 사용될 수 있다.
디블록킹 필터링은, 인접한 블록 간의 바운더리, 에지 또는 경계에 걸쳐서 수행된다. 결론적으로, 도 2a를 참조하면, 이러한 바운더리는, 비디어 프레임 내에서 나란히 존재하는 2개의 인접한 블록(10, 20) 간의 수직의 바운더리(1)가 될 수 있다. 한편, 이 바운더리는, 도 2b를 참조하면, 2개의 인접한 블록(10, 20) 간의 수평 바운더리(1)가 되는데, 여기서 하나의 블록(10)은 비디오 프레임 내에서 다른 블록(20) 위에 위치된다. 특정한 실시형태에 있어서, 수직의 바운더리는, 먼저 가장 좌측의 바운더리로부터 시작해서 필터링되며, 그들의 기하학적인 순서로 우측을 향해서, 바운더리를 통해서 진행한다. 그 다음, 수평 바운더리는, 상부의 바운더리에서 시작해서 필터링되고, 그들의 기하학적인 순서로, 바닥을 향해서, 바운더리를 통해서 진행한다. 그런데, 본 실시형태는 이러한 특정한 필터링 순서에 한정되지 않고, 실재적으로는 소정의 사전에 규정된 필터링 순서로 적용될 수 있다. 특정한 실시형태에 있어서, 비디오 프레임의 에지에서의 바운더리는, 바람직하게는, 필터링되지 않으며, 이에 의해 디블록킹 필터링으로부터 제외된다.
도 1은 실시형태에 따른 비디오 프레임 내의 다중 화소의 블록에 적용 가능한 필터링 제어를 위한 방법의 흐름도이다. 일반적으로, 도 1의 방법은 단계 S1에서 시작하는데, 여기서 제1필터 결정 값이 |p2i-2p1i+p0i|에 적어도 기반해서 블록(10)에 대해서 계산되며, 여기서 p0i는 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인 내에서 비디오 프레임 내의 다중 화소(21, 23, 25, 27)의 인접한 블록(20)에 대한 블록 바운더리(1)에 가장 근접한 화소(11)의 화소 값을 나타내고, p1i는 화소(11, 13, 15, 17)의 제1라인(12) 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소(13)의 화소 값을 나타내며, p2i는 화소(11, 13, 15, 17)의 제1라인(12) 내에서 블록 바운더리(10)에 제2의 다음의 가장 근접한 화소(15)의 화소 값을 나타낸다.
대응해서, 단계 S2는, |q2i-2q1i+q0i|에 적어도 기반해서 블록(20)에 대한 제2필터 결정 값을 계산하는데, 여기서 q0i는 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내에서 블록 바운더리(1)에 가장 근접한 인접한 블록(20) 내의 화소(21)의 화소 값을 나타내고, q1i는 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내에서 블록 바운더리(1)에 다음의 가장 근접한 인접한 블록(20)의 화소(23)의 화소 값을 나타내며, q2i는 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 인접한 블록(20) 내의 화소(25)의 화소 값을 나타낸다.
블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12)과 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22)은 화소의 동일한 수평 라인, 예를 들어 도 2a에 나타낸 바와 같이 수직의 바운더리(1)에 걸쳐서 연장하는 화소의 열에 속하거나 또는, 화소의 동일한 수직의 라인, 예를 들어 도 2b에 나타낸 바와 같이 수평 바운더리(1)에 걸쳐서 연장하는 화소의 행에 속한다. 그러므로, 화소(11, 13, 15, 17)의 제1라인(12)과 화소(21, 23, 25, 27)의 대응하는 제1라인(22)은 블록(10)과 인접한 블록(20) 간의 블록 바운더리(1)에 대해서 직교한다. 더욱이, 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12)과 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22)은 동일한 라인 번호를 갖는다. 예를 들어, 블록(10) 및 인접한 블록(20) 각각이 8과 같은 N을 포함하여 구성되면, 열 또는 행 번호 i=0...,N-1을 갖는 화소의 열 또는 행이면, 화소(11, 13, 15, 17)의 제1라인(10)은 블록(10) 내에서 라인 번호 i를 갖고, 화소(21, 23, 25, 27)의 대응하는 제1라인(20)도 인접한 블록(20) 내에서 라인 번호 i를 갖는다. 따라서, 블록 내의 화소(11, 13, 15, 17)의 제1라인(12)과 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22)은 블록 바운더리(1)에 대해서 대향한다.
본 실시형태에 따르면, "화소의 라인" 및 "화소의 대응하는 라인"은, 도 2a에 나타낸 바와 같이, 수직의 블록 바운더리의 경우 "화소 열" 및 "화소의 대응하는 열"을 나타내기 위해서 그리고, 도 2b에 나타낸 바와 같이, 수평 블록 바운더리의 경우 "화소의 행" 및 "화소의 대응하는 행"을 나타내도록 채용된다.
화소(11, 13, 15, 17)의 제1라인(12) 및 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 각각은 블록(10) 및 인접한 블록(20) 내의 사전에 규정된 라인이 될 수 있다. 따라서, 화소(11, 13, 15, 17)의 제1라인(12) 및 화소(21, 23, 25, 27)의 대응하는 라인(22)은 필터링 제어가 적용된 블록 바운더리(1) 각각에 대해서 사전에 규정되고 고정된 라인 번호 i를 갖는다. 한편, 화소(11, 13, 15, 17)의 제1라인(12) 및 화소(21, 23, 25, 27)의 대응하는 제1라인(22)은 현재 라인 및 현재 대응하는 라인 각각을 나타낼 수 있는데, 이하 더 상세히 설명된다.
단계 S1에서의 제1필터 결정 값의 계산 및 단계 S2에서의 제2필터 결정 값의 계산은, 소정의 순서로, 예를 들어 단계 S2에 선행하는 단계 S1 또는 단계 S1에 선행하는 단계 S2로 직렬로 또는 적어도 부분적으로 병렬로 수행될 수 있다. 따라서, 이들 2개의 단계 S1, S2의 결과는, 블록(10) 내의 화소 값에 기반해서 계산된 제1필터 결정 값과 블록(10)에 대해서 블록 바운더리(1)의 다른 측면 상의 인접한 블록(20) 내의 화소 값에 기반해서 계산된 제2필터 결정 값이다. 더 바람직하게는, 제1결정 값의 계산이 블록(10) 내의 화소 값에 기반해서, 그러므로 인접한 블록(20) 내의 소정의 화소 값에 기반하지 않고 수행된다. 대응해서, 제2필터 결정 값은, 바람직하게는 인접한 블록(20) 내의 화소 값에만 기반해서, 그리고 블록(10) 내의 소정의 화소 값에 기반하지 않고 계산된다.
그 다음, 단계 S1에서 계산된 제1필터 결정 값은 단계 S3에서 사용되어, 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정하게 한다. 대응해서, 제2필터 결정 값은, 단계 S4에서 사용되어, 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정하게 한다. 따라서, 분리의 필터 결정 값이 블록 바운더리(1)에 걸쳐서 연장하는 화소의 열 또는 행의 각각의 측면 또는 부분에 대해서 계산되고, 각각의 필터 결정이 그 측면 또는 부분에 대해서 계산된 특정 필터 결정 값에 기반해서 각각의 측면 또는 부분에 대해서 행해진다.
이는, 단일 또는 세트의 필터 결정 값이 화소의 라인 및 화소의 대응하는 라인에 대해서 계산되는 그리고, 이 필터 결정 값 또는 필터 결정 값의 세트가 블록 바운더리의 양쪽 측면 상에서 얼마나 많은 화소를 필터링할지를 결정하기 위해 사용되는, 종래 기술과 비교된다. 따라서, 종래 기술에 있어서는, 블록 내의 화소의 매칭 라인에 대해서 행해짐에 따라, 동일 번호의 화소가 인접한 블록 내의 화소의 대응하는 라인에 대해서 항상 필터링된다.
본 발명 실시형태는, 대신, 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12)에 대한 분리 필터 결정을 만들고, 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22)에 대한 또 다른 필터 결정을 만듦으로써, 비대칭의 필터링 제어 및 디블록킹 필터링을 가능하게 한다. 이는, 특정한 제1 및 제2필터 결정 값에 기반해서, 화소(11, 13, 15, 17)의 라인(12) 내의 다른 또는 동일 번호의 화소가, 디블록킹 필터링 및 수정을 위해 선택된 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 화소의 번호로서, 디블록킹 필터링 및 수정을 위해 선택될 수 있는 것을 의미한다.
일반적으로, 본 명세서에서 pXy는 블록(10) 내에서 라인 번호 y를 갖는 화소의 라인 내의 블록 바운더리(1)에 대한 화소 번호 X의 화소 값을 표시한다. 대응해서, qXy는 인접한 블록(20) 내의 라인 번호 y를 갖는 화소의 대응하는 라인 내의 블록 바운더리(1)에 대한 화소 번호 X의 화소 값을 표시한다.
단계 S3 및 S4는 소정의 순서로 직렬로 또는 실제로 적어도 부분적으로 병렬로 수행될 수 있다.
제1실시형태에 있어서, 단계 S1 및 S2는 블록(10)과 인접한 블록(20) 간의 주어진 블록 바운더리(1)에 대해서 한 번 수행될 수 있으며, 이에 의해 블록(10) 내의 화소(11, 13, 15, 17)의 모든 라인(12)에 대해서 그리고 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 모든 대응하는 라인(22)에 대해서 각각 적용되는 제1필터 결정 값 및 제2필터 결정 값을 계산한다. 이러한 접근에 있어서, 바람직하게는, 동일한 제1번호의 화소가 블록 바운더리(1)에 대해서 블록(10) 내의 화소(11, 13, 15, 17)의 각각의 라인(12) 내에서 필터링되고 수정되는데, 여기서 이 제1번호는 단계 S1에서 계산된 제1필터 결정 값에 기반해서 결정된다. 대응해서, 화소의 동일한 제2번호는, 바람직하게는, 블록 바운더리(1)에 대해서 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 각각의 대응하는 라인(22) 내에서 필터링되고 수정되는데, 여기서 이 제2번호는 단계 S2에서 계산된 제2필터 결정 값에 기반해서 결정된다.
한편, 제2실시형태에 있어서, 제1필터 결정 값 및 제2필터 결정 값은 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12)의 서브세트에 적용되고, 그리고 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22)의 대응하는 서브세트에 적용한다. 예를 들어, 한 쌍의 필터 결정 값은 블록 내의 화소(11, 13, 15, 17)의 제1의 4개의 라인(12) 및 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 제1의 4개의 대응하는 라인(22)에 대해서 사용될 수 있고, 다른 쌍의 필터 결정 값은 블록 내의 화소(11, 13, 15, 17)의 나머지 4개의 라인(12) 및 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 나머지 4개의 대응하는 라인(22)에 대해서 사용될 수 있다.
제3실시형태에 있어서, 단계 S1의 계산은 블록(10) 내의 화소(11, 13, 15, 17)의 각각의 라인(12)에 대해서 수행되고, 그 다음 단계 S3에서의 분리 결정이 화소(11, 13, 15, 17)의 각각의 이러한 라인(12)에 대해서 수행된다. 이 경우, 단계 S2에서의 계산은 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 각각의 대응하는 라인(22)에 대해서 대응해서 수행되고, 단계 S4에서의 분리 결정은 화소(21, 23, 25, 27)의 각각의 이러한 대응하는 라인(22)에 대해서 수행된다.
따라서, 제3실시형태에 있어서, 단계 S3은 단계 S1에서 계산된 제1필터 결정 값에 기반해서, 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정하는 단계를 포함하여 구성된다. 단계 S4는, 단계 S2에서 계산된 제2필터 결정 값에 기반해서, 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정하는 단계를 포함하여 구성된다.
이하의 부분은, 블록 바운더리(1)를 교차하는 각각의 라인(열 또는 행)에 대해서, 제3실시형태가 어떻게 분리해서 적용되는 지를 기재한다. 이 예에 있어서, 제1필터 결정 값은 dpi=|p2i-2p1i+p0i|로서 규정되고, 제2필터 결정 값은 dqi=|q2i-2q1i+q0i|로서 규정된다. 그 다음, 본 방법은 이하를 포함하여 구성된다:
● 블록 바운더리를 교차하는 각각의 라인 i에 대해서 dpi 계산, dqi 계산.
● dpi<thr1이면
○ 현재 블록(10)의 라인 i의 정상 필터링을 수행, 예를 들어 블록 경계 또는 바운더리로부터 2개의 화소를 필터링 및 수정;
● 그렇지 않으면, dpi≥thr1이면
○ 현재 블록(10)의 라인 i의 블록 경계 또는 바운더리로부터 제2화소를 필터링하지 않거나 현재 블록(10)의 라인 i 상에서 소정 화소를 전혀 필터링하지 않음;
● dqi<thr2이면
○ 인접한 블록(20)의 라인 i의 정상 필터링을 수행, 예를 들어 블록 경계 또는 바운더리(1)로부터 2개의 화소를 필터링 및 수정;
● 그렇지 않으면, dqi≥thr2이면
○ 인접한 블록(20)의 라인 i의 블록 경계 또는 바운더리(1)로부터 제2화소를 필터링하지 않거나 인접한 블록(20)의 라인 i 상에서 소정 화소를 전혀 필터링하지 않음.
상기 예로서 도시된 바와 같이, 도 1의 방법의 제3실시형태는, 분리의 제1 및 제2필터 결정 값을 계산할 수 있고, 그러므로 블록 바운더리(1)에 대해서 블록(10)과 인접한 블록(20) 내의 각각의 열 또는 행에 대해서, 얼마나 많은 화소를 필터링할지의 분리의 결정을 만들 수 있다. 따라서, 이 제3실시형태에 있어서, 제1 및 제2필터 결정 값은, 예를 들어 블록(10) 내의 화소(11, 13, 15, 17)의 각각의 라인(12)에 대해서 그리고 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 각각의 대응하는 라인(22)에 대해서 계산된 라인-특정 필터 결정 값이다.
제1실시형태에서는, 블록-특정 필터 결정 값이 사용된다. 따라서, 이 경우 단일의 제1필터 결정 값이 블록 바운더리(1)에 대해서 블록(10)에 대해 계산될 수 있고, 특정 블록 바운더리(1)에 관해서 블록(10) 내의 화소(11, 13, 15, 17)의 모든 라인(12)에 적용된다. 대응해서, 단일의 제2필터 결정 값이 블록 바운더리(1)에 대해서 인접한 블록(20)에 대해 계산되고, 특정 블록 바운더리(1)에 관해서 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 모든 대응하는 라인(22)에 적용된다.
제1실시형태의 제1예는, |p22-2p12+p02|+|p25-2p15+p05|와 같이, 제1필터 결정 값을 계산하는 단계를 포함하는데, 여기서 p02는 화소의 제1라인 내에서 블록 바운더리(1)에 가장 근접한 화소의 화소 값을 나타내고, p12는 화소의 제1라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소의 화소 값을 나타내며, p22는 화소의 제1라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소의 화소 값을 나타내고, p05는 블록(10) 내의 화소의 제2라인 내에서 블록 바운더리(1)에 가장 근접한 화소의 화소 값을 나타내고, p15는 화소의 제2라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소의 화소 값을 나타내며, p25는 화소의 제2라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소의 화소 값을 나타낸다.
그 다음, 제2필터 결정 값은, 바람직하게는, |q22-2q12+q02|+|q25-2q15+q05|와 같이 계산되는데, 여기서 q02는 화소의 대응하는 제1라인 내에서 블록 바운더리(1)에 가장 근접한 인접한 블록(20) 내의 상기 화소의 화소 값을 나타내고, q12는 화소의 대응하는 제1라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 인접한 블록(20)의 화소의 화소 값을 나타내며, q22는 화소의 상기 대응하는 제1라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q05는 인접한 블록(20) 내의 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q15는 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 인접한 블록(20)의 화소의 화소 값을 나타내며, q25는 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타낸다.
제1필터 결정 값은 얼마나 많은 화소를 필터링할지 결정할 때, 블록(10) 내의 화소(11, 13, 15, 17)의 모든 라인(12)에 대해서 사용하고, 제2필터 결정 값은 얼마나 많은 화소를 필터링할지 결정할 때, 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 모든 대응하는 라인(22)에 대해서 사용된다.
제1실시형태의 제1예에 있어서, 화소의 제1라인은 라인 i=2에 대응하고, 대응하는 제1라인은 대응하는 라인 i=2에 대응하며, 화소의 제2라인은 라인 i=5에 대응하고, 제2의 대응하는 라인은 대응하는 라인 i=5에 대응한다. 이 경우, 블록(10)은, 바람직하게는, 8개의 라인을 포함하여 구성되고, 인접한 블록(20)은, 바람직하게는, 또한 8개의 라인, 예를 들어 i=0-7을 포함하여 구성된다.
이하의 부분은, 제1실시형태의 실행 예를 나타낸다. 이 실행 예에 있어서, 제1필터 결정 값은 dp=|p22-2p12+p02|+|p25-2p15+p05|로서 규정되고, 제2필터 결정 값은 dq=|q22-2q12+q02|+|q25-2q15+q05|로서 규정된다.
● dp 계산, dq 계산;
● dp<thr1이면
○ 현재 블록(10)의 정상 필터링 수행, 예를 들어 블록 경계 또는 바운더리(1)로부터 2개의 화소를 필터링 및 수정;
● 그렇지 않으면, dp≥thr1이면
○ 블록 경계 또는 바운더리(1)로부터 제2화소를 필터링하지 않거나 소정 화소를 전혀 필터링하지 않음;
● dq<thr2이면
○ 인접한 블록(20)의 정상 필터링을 수행, 예를 들어 블록 경계 또는 바운더리로부터 2개의 화소를 필터링 및 수정;
● 그렇지 않으면, 예를 들어 dq≥thr2이면
○ 블록 경계 또는 바운더리로부터 제2화소를 필터링하지 않거나 소정 화소를 전혀 필터링하지 않음.
제1실시형태의 제2예에 있어서, 제1필터 결정 값은 라인 i=2 및 라인 i=5 대신 i=3 및 라인 i=4 내의 화소 값에 기반해서 블록-특정 필터 결정 값으로서 계산된다. 인접한 블록(20) 내의 대응하는 라인 i=3 및 i=4는, 바람직하게는, 제2필터 결정 값을 계산하는데 사용된다. 그 다음, 제1필터 결정 값은 |p23-2p13+p03|+|p24-2p14+p04|이고, 제2필터 결정 값은 |q23-2q13+q03|+|q24-2q14+q04|이고, 여기서 p03는 화소의 제1라인 내에서 블록 바운더리(1)에 가장 근접한 화소의 화소 값을 나타내고, p13는 화소의 제1라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소의 화소 값을 나타내며, p23는 화소의 제1라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소의 화소 값을 나타내고, p04는 블록(10) 내의 화소의 제2라인 내에서 블록 바운더리(1)에 가장 근접한 화소의 화소 값을 나타내고, p14는 화소의 제2라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소의 화소 값을 나타내며, p24는 화소의 제2라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소의 화소 값을 나타내며, q03는 화소의 대응하는 제1라인 내에서 블록 바운더리(1)에 가장 근접한 인접한 블록(20) 내의 상기 화소의 화소 값을 나타내고, q13는 화소의 대응하는 제1라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 인접한 블록(20)의 화소의 화소 값을 나타내며, q23는 화소의 대응하는 제1라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q04는 인접한 블록(20) 내의 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q14는 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 인접한 블록(20)의 화소의 화소 값을 나타내며, q24는 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타낸다.
제2실시형태에 있어서, 제1필터 결정 값 및 제2필터 결정 값은 화소의 4개의 라인 및 화소의 4개의 대응하는 라인에 대해서 계산된다. 이 제2실시형태는, 블록 및 인접한 블록 각각이 4×4 화소의 사이즈를 가지면, 적합할 수 있다. 더욱이, 제2실시형태는 8×8 화소와 같은 더 큰 블록에 대해서 사용될 수도 있다. 후자의 경우, 한 쌍의 필터 결정이 제1의 4개의 라인 화소 및 화소의 제1의 4개의 대응하는 라인에 대해서 계산되고, 다른 쌍의 필터 결정이 화소의 나머지 4개의 라인 및 화소의 나머지 4개의 대응하는 라인에 대해서 계산된다.
제2실시형태의 제1예에 있어서, 제1필터 결정 값은 |p20-2p10+p00|+|p23-2p13+p03|로, 제2필터 결정 값은 |q20-2q10+q00|+|q23-2q13+q03|로 계산된다. 이 경우, 화소의 라인 및 화소의 대응하는 라인은 라인 번호 i=0 내지 라인 번호 i=3으로 진행할 수 있다. 도 2a 및 도 2b에 나타낸 바와 같이, i=0-7와 같은, 화소의 더 큰 블록에 대해서, 제1쌍의 제1필터 결정 값 및 제2필터 결정 값은 |p20-2p10+p00|+|p23-2p13+p03| 및 |q20-2q10+q00|+|q23-2q13+q03|이다. 이 제1쌍의 필터 결정 값은 화소의 제1의 4개의 라인 및 화소의 제1의 4개의 대응하는 라인, 예를 들어 i=0-3에 적용 가능하다. 그 다음, 제2쌍의 제1필터 결정 값 및 제2필터 결정 값은 |p24-2p14+p04|+|p27-2p17+p07| 및 |q24-2q14+q04|+|q27-2q17+q07|이다. 그 다음, 제2쌍의 필터 결정 값은 화소의 4개의 마지막 라인 및 화소의 4개의 마지막 대응하는 라인, 예를 들어 i=4-7에 적용 가능하다.
제2실시형태의 제2예는 제1필터 결정 값은 |p21-2p11+p01|+|p22-2p12+p02|로, 제2필터 결정 값은 |q21-2q11+q01|+|q22-2q12+q02|로 계산된다. 이 경우, 화소의 라인 및 화소의 대응하는 라인은 라인 번호 i=0 내지 라인 번호 i=3으로 진행할 수 있다. 도 2a 및 도 2b에 나타낸 바와 같이, i=0-7과 같은, 화소의 더 큰 블록에 대해서, 제1쌍의 제1필터 결정 값 및 제2필터 결정 값은 |p21-2p11+p01|+|p22-2p12+p02| 및 |q21-2q11+q01|+|q22-2q12+q02|이다. 이 제1쌍의 필터 결정 값은 화소의 제1의 4개의 라인 및 화소의 제1의 4개의 대응하는 라인, 예를 들어 i=0-3에 적용 가능하다. 그 다음, 제2쌍의 제1필터 결정 값 및 제2필터 결정 값은 |p25-2p15+p05|+|p26-2p16+p06| 및 |q25-2q15+q05|+|q26-2q16+q06|이다. 그 다음, 제2쌍의 필터 결정 값은 화소의 4개의 마지막 라인 및 화소의 4개의 마지막 대응하는 라인, 예를 들어 i=4-7에 적용 가능하다.
제2실시형태의 이 개념은, 제1필터 값은 블록 내의 화소의 라인의 서브세트 내에 존재하는 화소의 화소 값에 기반해서 계산되고, 제2필터 결정 값은 인접한 블록 내의 화소의 대응하는 라인의 서브세트 내에 존재하는 화소의 화소 값에 기반해서 계산되는 경우로 연장될 수 있다. 따라서, 제2실시형태의 이 일반적인 개념에 있어서, 제1필터 결정 값은 |p2i-2p1i+p0i|+|p2j-2p1j+p0j|로서 계산될 수 있는데, 여기서 i, j는 간격 0 내지 N-1 내의 다른 라인 번호를 나타내고, N은 블록과 인접한 블록 내의 화소의 라인의 전체 수를 나타내며, i≠j이다. 그 다음, 제2필터 결정 값은, 바람직하게는, |q2i-2q1i+q0i|+|q2j-2q1j+q0j|로서 계산된다. 물론, 이 개념은 2개 이상의 화소의 라인 또는 화소의 대응하는 라인을 포함하는 서브세트와 함께 연장될 수 있다.
제1 또는 제3실시형태의 관련된 예에 있어서, 제1필터 결정 값은
Figure 112013087202692-pct00001
|p2i-2p1i+p0i|+
Figure 112013087202692-pct00002
|p2j-2p1j+p0j|로, 제2필터 결정 값은
Figure 112013087202692-pct00003
|q2i-2q1i+q0i|+
Figure 112013087202692-pct00004
|q2j-2q1j+q0j|로 계산된다.
Figure 112013087202692-pct00005
,
Figure 112013087202692-pct00006
는 다른 라인-특정 웨이트(weight)를 나타낸다. 또한, 이 개념은, 2개 이상의 화소의 라인 및 화소의 2개의 대응하는 라인의 경우로 연장될 수 있다. 그 다음, 특정 예에 있어서, 블록 또는 인접한 블록의 중간에 더 근접한 화소의 라인 또는 화소의 대응하는 라인은, 블록 또는 인접한 블록의 에지 중 하나에 더 근접한 화소의 라인 또는 화소의 대응하는 라인과 비교해서 비교적 더 높은 웨이트(weight)를 할당할 수 있다.
제4실시형태에 있어서, 블록-특정 및 라인-특정 필터 결정 값의 조합이 사용되어, 블록 내의 화소의 라인 및 인접한 블록 내의 화소의 대응하는 라인에 대해서 얼마나 많은 화소를 필터링할지를 결정한다. 도 3은 이러한 실시형태를 개락적으로 나타낸다. 방법은, 단계 S10에서 시작하는데, 여기서 제3필터 결정 값이 |p22-2p12+p02|+|p25-2p15+p05|와 같이 계산되며, 여기서 p02는 블록(10) 내의 화소의 제2라인 내에서 블록 바운더리(1)에 가장 근접한 화소의 화소 값을 나타내고, p12는 화소의 제2라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소의 화소 값을 나타내며, p22는 화소의 제2라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소의 화소 값을 나타내고, p05는 블록(10) 내의 화소의 제3라인 내에서 블록 바운더리(1)에 가장 근접한 화소의 화소 값을 나타내고, p15는 화소의 제3라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소의 화소 값을 나타내며, p25는 화소의 제3라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소의 화소 값을 나타낸다. 바람직하게는, 도 2a 및 도 2b에 나타낸 바와 같이, 화소의 제2라인은 블록(10) 내의 라인 번호 2에 대응하고, 화소의 제3라인은 블록(10) 내의 라인 번호 5에 대응한다.
다음 단계 S11은, 제4필터 결정 값을 |q22-2q12+q02|+|q25-2q15+q05|와 같이 계산하는데, 여기서 q02는 인접한 블록(20) 내의 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q12는 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 인접한 블록(20)의 화소의 화소 값을 나타내며, q22는 화소의 대응하는 제2라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q05는 인접한 블록(20) 내의 화소의 대응하는 제3라인 내에서 블록 바운더리(1)에 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q15는 화소의 대응하는 제3라인 내에서 블록 바운더리(1)에 다음의 가장 근접한 인접한 블록(20)의 화소의 화소 값을 나타내며, q25는 화소의 대응하는 제3라인 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 인접한 블록(20) 내의 화소의 화소 값을 나타낸다. 도 2a 및 도 2b를 참조하면, 화소의 제2의 대응하는 라인은, 바람직하게는, 인접한 블록(20) 내의 라인 번호 2에 대응하고, 화소의 제3의 대응하는 라인은, 바람직하게는 인접한 블록(20) 내의 라인 번호 5에 대응한다.
단계 S10 및 S11은 소정의 순서로 직렬로 수행되거나 적어도 부분적으로 병렬로 수행될 수 있다.
다음 단계 S12는, 단계 S10에서 계산된 제3필터 결정 값과 제3문턱 값(T3)을 비교한다. 제3필터 결정 값이 제3문턱 값 이하이면, 방법은 도 1의 단계 S1, 그 다음 S3으로 계속된다. 따라서, 이 경우 각각의 라인-특정 또는 제1필터 결정 값이 블록(10) 내의 각각의 라인 i에 대해서 계산되는데, 여기서 i는 바람직하게는 0 내지 7이다. 그 다음, 이 제1필터 결정 값이 도 1의 단계 S1에서 |p2i-2p1i+p0i|로 계산된다. 도 1의 단계 S3은, 단계 S1에서 화소의 라인 i에 대해서 계산된 제1필터 결정 값에 기반해서 블록(10) 내의 화소(10)의 라인 i 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지 결정한다. 이 과정은 블록(10) 내의 화소의 각각의 라인에 대해서 수행된다. 따라서, 도 2a 또는 도 2b에 도시된 바와 같이 블록(10)과 함께, 단계 S1 및 S3가 8회 수행된다. 그 다음, 방법은 도 3의 단계 S13으로 계속된다. 대응해서, 제3필터 결정 값이 단계 S12에서 제1문턱 값 이하가 아니면, 방법은 단계 S13으로 계속된다.
단계 S13은 단계 S11에서 계산된 제4필터 결정 값과 제4문턱 값(T4)을 비교한다. 제4필터 결정 값이 제4문턱 이하이면, 방법은 도 1의 단계 S2 및 S4로 계속된다. 각각의 라인-특정 또는 제2필터 결정 값이 도 1의 단계 S2에서 |q2i-2q1i+q0i|로 인접한 블록(20) 내의 각각의 대응하는 라인 i에 대해서 계산된다. 도 3의 단계 S4는 단계 S2에서 화소의 대응하는 라인 i에 대해서 계산된 제2필터 결정 값에 기반해서 인접하는 블록(20) 내의 화소의 대응하는 라인 i 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정한다. 이 과정은 인접한 블록(20) 내의 화소의 각각의 대응하는 라인에 대해서 수행된다. 그 다음, 이 방법은 종료된다. 대응해서, 제4필터 결정 값이 단계 S13에서 제2문턱 값 이하가 아니면, 방법은 종료된다.
단계 S12, S1 및 S3에 의해 형성된 루프는, 단계 S13, S2 및 S4에 의해 형성된 루프에 대해서 소정의 순서로 직렬로 또는 적어도 부분적으로 병렬로 수행될 수 있다.
이 제4실시형태에서는, 블록-기반 및 라인-기반의 비대칭의 필터 결정의 조합이 사용된다. 이 예에 있어서, 제3필터 결정 값은 dp=|p22-2p12+p02|+|p25-2p15+p05|으로 계산되고, 제4필터 결정 값은 dq=|q22-2q12+q02|+|q25-2q15+q05|로서 계산된다. 이 라인-특정 필터 결정 값은, 예를 들어 제1 및 제2필터 결정 값은, 라인 및 대응하는 라인 번호 i 각각에 대해서 dpi=|p2i-2p1i+p0i| 및 dqi=|q2i-2q1i+q0i|로 계산된다.
● dp 계산, dq 계산;
● dp<thr1이면
○ 각각의 라인 i에 대해서
● 라인 i에 대해서 dpi 계산
● dpi<thr1이면
● 현재 블록(10) 내의 라인 i의 정상 필터링 수행, 예를 들어 블록 경계 또는 바운더리(1)로부터 2개의 화소;
● 그렇지 않으면, 예를 들어, dpi≥thr1이면
● 현재 블록(10)의 라인 i의 블록 경계 또는 바운더리로부터 제2화소를 필터링하지 않거나 현재 블록(10)의 라인 i 상에서 소정 화소를 전혀 필터링하지 않음;
● 그렇지 않으면, dp≥thr1이면
○ 블록 경계 또는 바운더리(1)로부터 제2화소를 필터링하지 않거나 소정 화소를 전혀 필터링하지 않음;
● dq<thr1이면
○ 각각의 라인 i에 대해서
● 라인 i에 대해서 dqi 계산
● dqi<thr2
● 인접한 블록(20) 내의 라인 i의 정상 필터링 수행, 예를 들어 블록 경계 또는 바운더리(1)로부터 2개의 화소;
● 그렇지 않으면, dqi≥thr2이면
● 인접한 블록(20)의 라인 i의 블록 경계 또는 바운더리로부터 제2화소를 필터링하지 않거나 인접한 블록(20)의 라인 i 상에서 소정 화소를 전혀 필터링하지 않음;
● 그렇지 않으면, 예를 들어, dq≥thr2이면
○ 블록 경계 또는 바운더리(1)로부터 제2화소를 필터링하지 않거나 소정 화소를 전혀 필터링하지 않음.
상기 개시된 예에 있어서, 제3필터 결정 값과 제1필터 결정 값을 비교할 때, 동일한 문턱 값, 예를 들어 thr1이 사용되고, 제4필터 결정 값과 제2필터 결정 값을 비교할 때, 동일한 문턱 값, 예를 들어 thr2이 사용된다. 대안적인 접근에 있어서, 제3문턱 값이 제3필터 결정 값에 대해서 사용되고, 제1문턱 값이 제1필터 결정 값에 대해서 사용되고, 제4문턱 값이 제4필터 결정 값에 대해서 사용되고 그리고, 제2문턱 값이 제2문턱 값에 대해서 사용된다. 특정 실시형태에 있어서, 제3 및 제4문턱 값은 동등하고, 제1 및 제2문턱 값은 동등하다.
도 4는 도 1의 결정하는 단계 S3 및 S4의 특정 실시형태를 나타낸 흐름도이다. 방법은 도 1의 단계 S2로부터 계속된다. 다음 단계 S20는 도 1에서 단계 S1에서 계산된 제1필터 결정 값(dp)과 제1문턱 값(T1)을 비교한다. 제1필터 결정 값이 제1문턱 값 이하이면, 방법은 단계 S20로부터 단계 S21로 계속된다. 단계 S21은 블록 바운더리(1)에 대해서 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내의 2개의 화소를 필터링하도록 결정한다. 바람직하게는, 이들 2개의 화소는 블록 바운더리(1)에 가장 근접한 화소(11)와 화소(11, 13, 15, 17)의 라인(12) 내의 블록 바운더리(1)에 다음의 가장 근접한 화소(13)이다. 그런데, 제1필터 결정 값이 단계 S20에서 제1문턱 이하가 아니면, 방법은 대신 단계 S22로 계속된다. 단계 S22의 제1실시형태는 블록 바운더리(1)에 대해서 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내의 하나의 화소를 필터링하도록 결정한다. 이 화소(11)는, 바람직하게는 화소(11, 13, 15, 17)의 라인(12) 내의 블록 바운더리(1)에 가장 근접한 화소(11)이다. 단계 S22의 제2실시형태는 블록 바운더리(1)에 대해서 블록 내의 화소(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내에 필터링할 화소가 없는 것을 결정한다.
단계 S23 내지 S25는 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22)에 대한 대응하는 결정을 수행한다. 따라서, 단계 S23은 도 1의 단계 S2에서 계산된 제2필터 결정 값(dq)과 제2문턱 값(T2)을 비교한다. 제2필터 결정 값이 제2문턱 값 이하이면, 방법은 단계 S24로 계속된다. 단계 S24는 블록 바운더리(1)에 대해서 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 2개의 화소를 필터링하도록 결정한다. 이들 2개의 화소(21, 23)는, 바람직하게는, 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 블록 바운더리(1)에 가장 근접한 화소(21) 및 블록 바운더리(1)에 다음의 가장 근접한 화소(23)이다. 제2필터 결정 값이 제2문턱 이하가 아니면, 방법은 대신 단계 S23으로부터 단계 S25로 계속된다. 단계 S25의 제1실시형태는 블록 바운더리(1)에 대해서 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 하나의 화소를 필터링하도록 결정한다. 이 화소(21)는, 바람직하게는, 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 블록 바운더리(1)에 가장 근접한 화소(21)이다. 단계 S25의 제2실시형태는, 블록 바운더리(1)에 대해서 인접한 블록 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에 필터링할 화소가 없는 것을 결정한다.
단계 S20, S21 및 S22는, 단계 S23, S24 및 S25에 앞서 또는 이후에 또는 적어도 병렬로 수행될 수 있다.
이 개념은 필터 결정 값마다 하나 이상의 문턱 값을 사용함으로써 연장될 수 있다. 예를 들어, dp<T1이면, 2개의 화소가 화소(11, 13, 15, 17)의 라인(12) 내에서 필터링되고, T1≤dp<T1'이면, 하나의 화소가 화소(11, 13, 15, 17)의 라인(12) 내에서 필터링되며, dp≥T1'이면, 화소(11, 13, 15, 17)의 라인(12) 내에서 필터링되는 화소는 없다. 이 경우, T1<T1'이다. 대응해서, dq<T2이면, 2개의 화소가 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에서 필터링되고, T2≤dq<T2'이면, 하나의 화소가 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에서 필터링되며, dq≥T2'이면, 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에서 필터링되는 화소는 없다. 이 경우 T2<T2'이다.
따라서, 일반적인 측면에 있어서, 제1 또는 제2필터 결정 값이 제로에 근접할수록, 더 큰 제1 또는 제2필터 결정 값과 비교함에 따라, 화소의 라인 또는 대응하는 라인 내의 더 많은 화소를 필터링 및 가능하게는 수정함으로써, 더 많은 필터링이 화소의 특정 라인 또는 대응하는 라인에 적용된다. 이는, 제로 또는 낮은 제1 또는 제2필터 결정 값이 비디오 프레임 내에서 구조를 갖지 않거나 조금 갖지만 상당히 균일한 영역인 것을, 암시하는 것을 의미한다. 대응해서, 높은 제1 또는 제2필터 결정 값은, 일반적으로 비디오 프레임 내의 영역 내의 로컬 구조를 일반적으로 반영하는데, 이 로컬 구조는 억압되거나 필터 어웨이(filter away)되지 않게 된다.
이 실시형태는, 블록 경계로부터의 제2화소의 필터링이 종래 기술의 HEVC 솔루션과 비교해서 덜 자주 발생할 수 있으므로, 디블록킹 필터링과 연관된 계산의 복잡성을 감소시킨다.
상기 논의되고 다른 필터 결정 값을 비교하기 위해 사용된 이 문턱 값은, 바람직하게는 블록 또는 인접한 블록에 할당된 양자화 파라미터(QP)에 의존한다. 도 5는 이러한 접근을 개략적으로 도시한다. 본 방법은 단계 S30에서 시작하는데, 여기서 제1필터 결정 값이 비교되는(도 4의 단계 S20 참조) 제1문턱 값이, 블록(10)과 연관된 양자화 파라미터에 기반해서 결정된다. 대응해서, 단계 S31은, 제2문턱 값이 비교되는(도 4의 단계 S23 참조) 제2문턱 값을, 인접한 블록(20)과 연관된 양자화 파라미터 및/또는 블록(10)과 연관된 양자화 파라미터에 기반해서, 결정한다.
예를 들어, T1 및 T2는 파라미터 β에 기반해서 결정되고, 파라미터 β는 블록(10) 또는 인접한 블록(20)의 QP 값으로부터 결정된다. 특정 실시형태에 있어서, 파라미터 β는 QP 값에 기반한 표로부터 읽히는데, 이하 표 1을 참조하자.
표 1 - β 및 QP 값
Figure 112013087202692-pct00007
특정 실시형태에 있어서, T1=T2=β/6 또는 T1=T2=(β + β>>1)>>3이다. 실시형태의 다른 변형으로서, 문턱은, 분리의 표(table), 예를 들어 T1=function(QP), T2=function(QP)로부터 읽힐 수 있다. 또한, 상기된 제3 및 제4문턱 값은, 바람직하게는 블록 및 인접한 블록 각각과 연관된 양자화 파라미터에 기반해서 결정된다.
도 6은 필터링 프로세스와 연관해서 실시형태의 필터링 제어가 어떻게 사용될 수 있는 지를 나타낸 흐름도이다. 방법은 단계 S40에서 시작되는데, 제1오프셋 또는 델타 값 △이 9×(q0j-p0j)-3×(q1j-p1j) / 16에 기반해서 계산되며, 여기서 p0j는 화소(11, 13, 15, 17)의 라인(12) 내에서 블록 바운더리(1)에 가장 근접한 화소(11)의 화소 값을 나타내고, p1j는 화소(11, 13, 15, 17)의 라인(12) 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소(13)의 화소 값을 나타내며, q0j는 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에서 블록 바운더리(1)에 가장 근접한 인접한 블록(20) 내의 화소(21)의 화소 값을 나타내고, q1j는 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에서 블록 바운더리(1)에 다음의 가장 근접한 인접한 블록(20) 내의 화소(23)의 화소 값을 나타낸다.
제1오프셋은, 단계 S41에서, 제1오프셋을 화소 값에 가산함으로써, 화소(11, 13, 15, 17)의 라인(12) 내의 블록 바운더리(1)에 가장 근접한 화소(11)의 화소 값을 수정하도록 사용되는데, 예를 들어 p0'j=p0j+△이다. 또한, 단계 S41에서, 제1오프셋을 화소 값으로부터 감산함으로써, 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 블록 바운더리(1)에 가장 근접한 화소(21)의 화소 값을 수정하는데, 예를 들어 q0'j=q0j-△이다. 그 다음, 본 방법은 도 1의 단계 S1 및 S2로 계속되는데, 여기서 제1(dp) 및 제2(dq) 필터 결정 값이 계산된다. 다음 단계 S42는 제1필터 결정 값과 제1문턱 값(T1)을 비교한다. 이 단계 S42는 도 4의 단계 S20에 대응한다. 제1필터 결정 값이 문턱 이하이면, 방법은 단계 S43으로 계속된다.
단계 S43은, p0j+p2j-2p1j+2△ / 4에 기반해서 제2오프셋 또는 델타 값 △p을 계산하는데, 여기서 p2j는 화소(11, 13, 15, 17)의 라인(12) 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소(15)의 화소 값을 나타낸다. 그 다음, 제2오프셋은, 단계 S44에서, 제2오프셋을 화소 값에 가산함으로써, 화소(11, 13, 15, 17)의 라인(12) 내의 블록 바운더리(1)에 다음의 가장 근접한 화소(13)의 화소 값을 수정하도록 사용되는데, 예를 들어 p1'j=p1j+△p이다.
그 다음, 방법은 단계 S45로 계속된다. 또한, 이 방법은, 제1문턱 값이 제1문턱 이하가 아니면, 도 6에서 단계 S42로부터 단계 S45로 계속된다.
단계 S45는 제2필터 결정 값과 제2문턱(T2)을 비교한다. 이 단계 S45는 도 4의 단계 S23에 대응한다. 제2필터 결정 값이 제2문턱 이하이면, 방법은 단계 S46으로 계속된다. 단계 S46은 q0j+q2j-2q1j-2△ / 4에 기반해서 제3오프셋 △q을 계산하는데, 여기서 q2j는 화소(21, 23, 25, 27)의 대응하는 라인(12) 내에서 블록 바운더리(1)에 제2의 다음의 가장 근접한 인접한 블록(20) 내의 화소(25)의 화소 값을 나타낸다. 그 다음, 제3오프셋은, 단계 S47에서, 제3오프셋을 화소 값에 가산함으로써, 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 블록 바운더리(1)에 다음의 가장 근접한 화소(23)의 화소 값을 수정하도록 사용되는데, 예를 들어 q1'j=q1j+△q이다.
단계 S42, S43 및 S44는 소정의 순서로 직렬로 수행되거나 단계 S45, S46 및 S47과 적어도 부분적으로 병렬로 수행될 수 있다.
상기에 있어서, 제1, 제2 및 제3오프셋은 화소 값의 특정 공식에 기반해서 계산된다. 이는, 제1오프셋이 9×(q0j-p0j)-3×(q1j-p1j) / 16의 함수로서 계산되고, 제2오프셋이 p0j+p2j-2p1j+2△ / 4의 함수로서 계산되며, 제3오프셋이 q0j+q2j-2q1j-2△ / 4로 계산된다. 이러한 함수의 차이는 가능하고, 단계 S40, S43 및 S46에서 사용될 수 있다. 그 다음, 이러한 함수는, 오프셋의 계산이 하드웨어 내에서 효과적으로 수행되게 규정될 수 있다. 이 경우, 일반적으로 소정의 분할(division)을 갖지 않는 것, 및/또는 오프셋이 정수 값이 되게 하는 함수를 규정하는 것이 선호된다. 실시형태에 있어서, (X+8)>>4이 X/16의 정수-표현으로 사용되는데, 여기서 >>는 우측 시프트 연산을 표시한다. 따라서, 특정 실시형태에 있어서, 단계 S40은 (9×(q0j-p0j)-3×(q1j-p1j)+8) >>4에 기반해서 바람직하게는 동등하게 제1오프셋을 계산한다. 제2 및 제3오프셋의 대응하는 정수 표현은, (((p0j+p2j+1)>>1)-p1j+△)>>1 및 (((q0j+q2j+1)>>1)-q1j-△)>>1이다.
일례에 있어서, 디블록킹의 결과로서의 수정된 화소 값은 이하와 같이 계산된다. 이 예에 있어서, 제1필터 결정 값은 dp=|p22-2p12+p02|+|p25-2p15+p05|로서, 제2필터 결정 값은 dq=|q22-2q12+q02|+|q25-2q15+q05|로서 계산된다.
● △= 9×(q0-p0)-3×(q1-p1) / 16
● p0'=p0+△
● q0'=q0-△
● dp<thrP이면
○ △p=p0+p2-2p1j+2△ / 4
○ p1'=p1+△p
● dq<thrQ이면
○ △q=q0+q2-2q1-2△ / 4
○ q1'=q1+△q
프로그램 언어에서의 상기 예의 계산을 위한 정확한 공식은 이하의 텍스트(text)와 같이 보일 수 있다. 여기서, Clip3 함수는 2개의 제1함수 인수(argument) 간의 범위에 대한 출력 값의 클리핑(clipping)이다.
Int xCalcDP(Pel* piSrc, Int iOffset)
{
return abs(piSrc[-iOffset*3]-2*piSrc[-iOffset*2]+piSrc[-iOffset]);
}
Int xCalcDQ(Pel* piSrc, Int iOffset)
{
return abs(piSrc[0]-2*piSrc[iOffset]+piSrc[iOffset*2]);
}
Int iDP=xCalcDP(piTmpSrc+iSrcStep*(iIdx*uiPelsInPart+iBlkIdx*
DEBLOCK_SMALLEST_BLOCK+2),iOffset)+xCalcDP(piTmpSrc+iSrcStep*
(iIdx*uiPelsInPart+iBlkIdx*DEBLOCK_SMALLEST_BLOCK+5),iOffset);
Int iDQ=xCalcDQ(piTmpSrc+iSrcStep*(iIdx*uiPelsInPart+iBlkIdx*
DEBLOCK_SMALLEST_BLOCK+2),iOffset)+xCalcDQ(piTmpSrc+iSrcStep*
(Idx*uiPelsInPart+iBlkIdx*DEBLOCK_SMALLEST_BLOCK+5),iOffset);
Int iSideThreshold=iBeta/6;
Bool bFilterP=(iDP<iSideThreshold);
Bool bFilterQ=(iDQ<iSideThreshold);
delta=(9*(m4-m3)-3*(m5-m2)+8)>>4;
if (abs(delta)<iThrCut)
{
Int tc2=tc>>1;
delta=Clip3(-tc, tc, delta);
piSrc[-iOffset]=Clip((m3+delta));
piSrc[0]=Clip((m4-delta));
if(bFilterP)
{
Int delta1=Clip3(-tc2,tc2,((((m1+m3+1)>>1)-m2+delta)>>1));
piSrc[-iOffset*2]=Clip((m2+delta1));
}
if(bFilterQ)
{
Int delta2=Clip3(-tc2,tc2,((((m6+m4+1)>>1)-m5-delta)>>1));
piSrc[iOffset]=Clip((m5+delta2));
}
}
도 7은 도 1의 방법의 추가의 선택적인 단계를 나타낸 흐름도이다. 이 방법은 도 1의 단계 S2로부터 계속된다. 다음 단계 S50은 제1결정 값 및 제2결정 값의 합과 문턱 값(T)을 비교한다. 이 합이 문턱 값 이하가 아니면, 방법은 종료한다. 따라서, 이 경우, 필터링은, 특정 블록 바운더리(1)에 관해서 블록(10) 및 인접한 블록(20)에 전혀 적용되지 않는다. 그 다음, 블록(10)과 인접한 블록(20)은 다수의 로컬 구조를 포함하여 구성되는데, 이 로컬 구조는 필터 어웨이되지 않게 된다. 그런데, 합이 문턱 값 이하이면, 방법은 도 1의 단계 S3 및 S4로 계속되고, 여기서 얼마나 많은 화소를 필터링할지의 결정이 제1필터 결정 값(단계 S3) 또는 제2필터 결정 값(단계 S4)에 기반해서 수행된다.
이 실시형태는, 제1 및 제2필터 결정이 블록 바운더리를 전혀 필터링하지 않을지의 결정에 대해서 사용됨에 따라, 많은 추가적인 계산을 요구하지 않는 장점을 갖는다.
본 명세서에 개시된 실시형태는, 블록 바운더리의 각각의 측면 상에서 구조에 적용되도록 디블록킹 필터링을 제어하는 비대칭의 디블록킹 결정을 달성한다. 비대칭의 결정은, 블록 바운더리의 일측면에 적용된 필터링 양이 블록 바운더리의 다른 측면에 적용된 필터링 양과 다를 수 있음에 따라, 로컬 구조에 대한 추가적인 적용(adaptation)을 제공하는 것을 의미한다. 이는, 주관적 및 객관적으로 비디오 품질을 개선한다.
도 8은 필터링 제어 장치(100)의 실시형태의 개략적인 블록도이다. 필터링 제어 장치(100)는, |p2i-2p1i+p0i|에 적어도 기반해서, 비디오 프레임 내의 블록(10)에 대한 제1필터 결정 값을 계산하도록 구성된 제1결정 값 계산기(110)를 포함하여 구성된다. 또한, 필터링 제어 장치(100)는, |q2i-2q1i+q0i|에 적어도 기반해서 블록(10)에 대한 제2의, 다른 필터 결정 값을 계산하도록 구성된 제2결정 값 계산기(120)를 포함하여 구성된다.
제1화소 결정기(130) 또는 제1화소 결정 유닛 또는 프로세스는, 제1결정 값 계산기(110)에 의해 계산된 제1필터 결정 값에 기반해서, 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정하도록 구성된다. 제2화소 결정기(140) 또는 제2화소 결정 유닛 또는 프로세서는, 제2결정 값 계산기(120)에 의해 계산된 제2필터 결정 값에 기반해서, 비디오 프레임의 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정하도록 필터링 제어 장치(100) 내에 제공된다.
실시형태에 있어서, 제1화소 결정기(130)는, 화소(11, 13, 15, 17)의 제1라인(12)에 대해서 제1결정 값 계산기(110)에 의해 계산된 제1필터 결정 값에 기반해서, 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정하도록 구성된다. 대응해서, 제2화소 결정기(140)는, 화소(21, 23, 25, 27)의 대응하는 라인(22)에 대해서 제2결정 값 계산기(120)에 의해 계산된 제2필터 결정 값에 기반해서, 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정한다.
다른 실시형태에 있어서, 제1결정 값 계산기(110)는, 제1필터 결정 값을 |p22-2p12+p02|+|p25-2p15+p05|로 계산하도록 구성되고, 제2필터 결정 값 계산기(120)는 제2필터 결정 값을 |q22-2q12+q02|+|q25-2q15+q05|로 계산하도록 구성된다.
또 다른 실시형태에 있어서, 제1쌍의 제1결정 값 계산기(110)는, 제1쌍의 제1필터 결정 값을 |p20-2p10+p00|+|p23-2p13+p03|로 계산하도록 구성되고, 제2결정 값 계산기(120)는, 제1쌍의 제2필터 결정 값을 |q20-2q10+q00|+|q23-2q13+q03|로 계산하도록 구성된다. 또한, 제1결정 값 계산기(110)는 제2쌍의 제1필터 결정 값을 |p24-2p14+p04|+|p27-2p17+p07|로 결정하고, 제2결정 값 계산기(120)는 제2쌍의 제2필터 결정 값을 |q24-2q14+q04|+|q27-2q17+q07|로 계산하도록 구성된다.
도 9는 필터링 제어 장치(100)의 다른 실시형태의 개략적인 블록도이다. 필터링 제어 장치(100)는, 이 실시형태에 있어서 및 제1결정 값 계산기(110)에 부가해서, 제2결정 값 계산기(120), 제1화소 결정기(130) 및 제2화소 결정기(140), 제3결정 값 계산기(150)를 더 포함하여 구성된다. 그 다음, 제3결정 값 계산기(150)는, 제3필터 결정 값을 |p22-2p12+p02|+|p25-2p15+p05|로 계산하도록 구성된다. 제4결정 값 계산기(160)는 또한 필터링 제어 장치(10) 내에서 실행되고, 제4필터 결정 값을 |q22-2q12+q02|+|q25-2q15+q05|로서 계산하도록 구성된다.
이 실시형태에 있어서, 제1필터 결정 값 계산기(110)는 제3결정 값 계산기(150)에 의해 계산된 제3필터 결정 값이 제3문턱 값 이하이면, 제1필터 결정 값을 계산하도록 구성된다. 제3결정 값이 제3문턱 이하이면, 제1결정 값 계산기(110)는 |p2i-2p1i+p0i|로서 블록(10) 내의 화소(11, 13, 15, 17)의 각각의 라인 i 12에 대한 제1문턱 값을 계산한다. 그 다음, 제1화소 결정기(130)는, 제3필터 결정 값이 제3문턱 값 이하이면, 블록(10) 내의 화소(11, 13, 15, 17)의 각각의 라인 i 12에 대해서, 화소(11, 13, 15, 17)의 라인 i 12에 대해서 제1결정 값 계산기(110)에 의해 계산된 제1필터 결정 값에 기반해서, 블록(10) 내의 화소(11, 13, 15, 17)의 라인 i 12 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정한다.
제2결정 값 계산기(120)는, 바람직하게는 제4필터 결정 값과 제4문턱 값 간의 비교에 응답한다. 따라서, 제4결정 값 계산기(160)에 의해 계산된 제4필터 결정 값이 제4문턱 이하이면, 제2결정 값 계산기(120)는 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 각각의 대응하는 라인 i 22에 대해서 |q2i-2q1i+q0i|로서 제2필터 결정 값을 계산한다. 제2화소 결정기(240)는, 제4필터 결정 값이 제4문턱 값 이하이면 그리고 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 각각의 대응하는 라인 i 22에 대해서, 화소(21, 23, 25, 27)의 대응하는 라인 i 22에 대해서 계산된 제2필터 결정 값에 기반해서, 인접하는 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인 i 22 내의 얼마나 많은 화소를 블록 바운더리(1)에 대해서 필터링할지를 결정하도록 구성된다.
도 10은 필터링 제어 장치(100)의 또 다른 실시형태의 개략적인 블록도이다. 도 8에 도시된 실시형태의 유닛 110-140에 추가해서, 필터링 제어 장치(100)는 제1결정 값 계산기(110)에 의해 계산된 제1필터 결정 값과 제1문턱 값을 비교하도록 구성된 제1비교기(180)를 포함하여 구성된다. 대응해서, 제2비교기(182)는 제2결정 값 계산기(120)에 의해 계산된 제2필터 결정 값과 제2문턱 값을 비교하도록 구성된다.
이 실시형태에 있어서, 제1화소 결정기(130)는, 제1필터 결정 값이 제1비교기(180)에 의해 결정됨에 따라, 제1문턱 값 이하이면, 블록 바운더리(1)에 대해서 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내의 2개의 화소를 필터링하도록 결정하도록 구성된다. 그런데, 제1필터 결정 값이 제1문턱 값 이하가 아니면, 제1화소 결정기(130)는 대신 블록 바운더리(1)에 대해서 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내의 하나의 화소를 필터링하도록 결정하도록 구성된다. 한편, 제1화소 결정기(130)는, 대신 블록 바운더리(1)에 대해서 블록(10) 내의 화소(11, 13, 15, 17)의 라인(12) 내의 화소를 필터링하지 않도록 결정하도록 구성된다.
제2화소 결정기(140)는, 제2비교기(182)에 의해 결정된 바와 같이, 제2필터 결정 값이 제2문턱 값 이하이면, 블록 바운더리(1)에 대해서 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 2개의 화소를 필터링하도록 결정하도록 구성된다. 그런데, 제2필터 결정 값이 제2문턱 이하가 아니면, 제2화소 결정기(140) 대신 블록 바운더리(1)에 대해서 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 하나의 화소를 필터링하도록 결정되도록 구성된다. 한편, 제2화소 결정기(140)는 대신 블록 바운더리(1)에 대해서 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에서 화소를 필터링하지 않도록 결정되도록 구성된다.
실시형태에 있어서, 도 10의 필터링 제어 장치(100)는, 9×(q0j-p0j)-3×(q1j-p1j) / 16에 기반해서 제1오프셋을 계산하도록 구성된 제1오프셋 계산기(181)를 포함하여 구성된다. 필터링 제어 장치(100)의 제1화소 수정기(190)는, 제1오프셋을 화소(11)의 화소 값에 가산함으로써, 화소(11, 13, 15, 17)의 라인(12) 내에서 블록 바운더리(1)에 가장 근접한 화소(11)의 화소 값을 수정하도록 구성된다. 제2화소 수정기(192)는, 제1오프셋을 화소(21)의 화소 값으로부터 감산함으로써, 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에서 블록 바운더리(1)에 가장 근접한 화소(21)의 화소 값을 수정하도록 구성된다.
바람직하게는, 제2오프셋 계산기(183)는, 제1필터 결정 값이 제1비교기(180)에 의해 결정된 바와 같이 제1문턱 값 이하이면, 제2오프셋을 계산하도록 필터링 제어 장치(10) 내에서 수행된다. 그 다음, 이 제2오프셋은 p0j+p2j-2p1j+2△ / 4에 기반해서 계산된다. 제3화소 수정기(194)는, 제1필터 결정 값이 제1문턱 값 이하이면, 동작한다. 이 경우, 제3화소 수정기(194)는, 제2오프셋을 이 화소(13)의 화소 값에 가산함으로써, 화소(11, 13, 15, 17)의 라인(12) 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소(13)의 상기 화소 값을 수정하도록 구성된다.
제3오프셋 계산기(185)는, 제2필터 결정 값이 제2비교기(182)에 의해 결정된 바와 같이 제2문턱 값 이하이면, q0j+q2j-2q1j-2△ / 4에 기반해서 제3오프셋을 계산하도록 구성된다. 제2필터 결정 값이 제2문턱 값 이하이면, 필터링 제어 장치(100)의 제4화소 수정기(196)는 제3오프셋을 화소(23)의 화소 값에 가산함으로써, 화소(21, 23, 25, 27)의 대응하는 라인(22) 내에서 블록 바운더리(1)에 다음의 가장 근접한 화소(23)의 화소 값을 수정하도록 구성된다.
도 9 및 도 10과 연관해서 상기 논의된 필터링 제어 장치(100)의 실시형태는, 필터 결정 값을 각각의 문턱 값에 대해서 비교한다. 실시형태에 있어서, 이러한 문턱 값은 특정 블록 바운더리(1)에 대해서 필터링 제어 장치(100)에 의해 계산된다. 그 다음, 바람직하게는, 필터링 제어 장치(100)는, 블록(10)과 연관된 양자화 파라미터에 기반해서, 도 10의 제1비교기(180)에 의해 사용된 제1문턱 값 및 도 9의 필터링 제어 장치(100)에 의해 사용된 제3문턱 값을 결정하도록 구성된 문턱 결정기(170) 또는 문턱 결정 프로세서 또는 유닛을 포함하여 구성된다. 대응해서, 문턱 결정기(170)는, 바람직하게는, 인접한 블록(20)과 연관된 양자화 파라미터에 기반해서, 도 10의 제2비교기(182)에 의해 사용된 제2문턱 값 및 도 9의 필터링 제어 장치(100)에 의해 사용된 제4문턱 값을 결정한다.
도 11은 필터링 제어 장치(100)의 또 다른 실시형태의 개략적인 블록도이다. 도 8에 도시된 실시형태의 유닛 110-140에 추가해서, 필터링 제어 장치(100)는, 이 실시형태에 있어서, 제1필터 결정 값 및 제2필터 결정 값의 합을 문턱 값과 비교하도록 구성된 제3비교기(184)를 포함하여 구성된다. 합이 문턱 값과 동등하거나 초과하면, 특정 블록 바운더리(1)에 관해서 블록(10)과 인접한 블록(20)에 적용되는 필터링이 없으므로, 제1 및 제2화소 결정기(130, 140)는 소정 수의 화소를 필터링하도록 결정하지 않게 된다. 그런데, 합이 문턱 이하이면, 제1 및 제2화소 결정기(130, 140)는, 제1 또는 제2필터 결정 값 각각에 기반해서, 필터링될 화소 수를 결정하도록 동작된다.
상기 논의되고 도 8 내지 도 11에 개시된 필터링 제어 장치(100)의 실시형태는 조합될 수 있다. 예를 들어, 도 9의 제3값 계산기(150) 및 제4값 계산기(160)는 도 10 또는 도 11에 개시된 소정의 실시형태에서 실행될 수 있다. 대응해서, 도 11의 제3비교기(184)는 도 9 또는 도 10에 개시된 소정의 실시형태에서 실행될 수 있다.
도 8-11과 연관해서 개시된 각각의 유닛 110-196은 필터링 제어 장치(100)에서 물리적으로 분리된 유닛 110-196으로 개시되고, 모두가 ASICs(Application Specific Integrated Circuits)와 같은 특정 목적 회로로 될 수 있지만, 필터링 제어 장치(100)의 대안적인 실시형태가 가능하며, 유닛 110-196 중 몇몇 또는 모두가 일반 목적 프로세서상에서 구동하는 컴퓨터 프로그램 모듈로서 실행된다. 이러한 실시형태는 도 12에 개시된다.
도 12는 DSP(Digital Signal Processor) 또는 CPU(Central Processing Unit)과 같은 처리 유닛(72)을 갖는 컴퓨터(70)의 실시형태를 개략적으로 도시한다. 처리 유닛(72)은 본 명세서에 개시된 방법의 다른 단계를 수행하기 위한 단일 유닛 또는 복수의 유닛이 될 수 있다. 또한, 컴퓨터(70)는 기록된 또는 생성된 비디오 프레임 또는 인코딩된 비디오 프레임을 수신하고, 인코딩된 비디오 프레임 또는 디코딩된 비디오 데이터를 출력하는 입/출력(I/O) 유닛(71)을 포함하여 구성된다. I/O 유닛(71)은 도 12에 단일 유닛으로 도시되지만, 유사하게 분리의 입력 유닛 및 분리의 출력 유닛 형태로 될 수 있다.
더욱이, 컴퓨터(70)는, 예를 들어 EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시 메모리 또는 디스크 드라이브와 같은 비휘발성 메모리 형태로 적어도 하나의 컴퓨터 프로그램 프로덕트(73)를 포함하여 구성된다. 컴퓨터 프로그램 프로덕트(73)는 컴퓨터 프로그램(74)을 포함하여 구성되고, 이 컴퓨터 프로그램은 처리 유닛(72)과 같은 컴퓨터(70)에 의해 구동되거나 실행될 때, 컴퓨터(70)가 도 1과 연관해서 상기된 방법의 단계를 수행하도록 하는 코드 수단을 포함하여 구성된다. 그러므로, 실시형태에 있어서, 컴퓨터 프로그램(74) 내의 코드 수단은 블록을 위한 제1필터 결정 값을 계산하기 위한 제1결정 값 계산(DVC) 모듈(310)과, 블록을 위한 제2필터 결정 값을 계산하기 위한 제2화소 값 계산 모듈(320)과, 화소(11, 13, 15, 17)의 라인(12) 내의 얼마나 많은 화소를 필터링할지를 결정하기 위한 제1화소 결정(PD) 모듈(330)과, 화소(21, 23, 25, 27)의 대응하는 라인(22) 내의 얼마나 많은 화소를 필터링할지를 결정하기 위한 제2화소 결정 모듈(340)을 포함하여 구성된다. 기본적으로, 이들 모듈 310-340은, 처리 유닛(72) 상에서 구동할 ?, 도 1의 흐름도의 단계를 수행한다. 따라서, 다른 모듈 310-340이 처리 유닛(72) 상에서 구동할 때, 이들은 도 8-11의 대응하는 유닛에 대응한다.
컴퓨터 프로그램(74)은, 추가적으로, 제3결정 값 계산 모듈, 제4결정 값 계산 모듈, 문턱 결정 모듈, 제1비교 모듈, 제2비교 모듈, 제3비교 모듈, 제1오프셋 계산 모듈, 제2오프셋 계산 모듈, 제3오프셋 계산 모듈, 제1화소 수정 모듈, 제2화소 수정 모듈, 제3화소 수정 모듈 및/또는 제4화소 수정 모듈을 포함하여 구성되어, 도 9-11에서 대응하는 유닛 150-196의 동작을 수행하게 한다.
도 12의 컴퓨터(70)는 사용자 장치이거나 사용자 장치 내에 존재할 수 있다. 이 경우, 사용자 장치는, 추가적으로 디스플레이를 포함하여 구성되거나 또는 디스플레이에 연결되어 비디오 데이터를 디스플레이할 수 있다.
도 8-11의 필터링 제어 장치는, 바람직하게는 비디오 코딩에서 사용된다. 바람직하게는, 필터링 제어 장치는 비디오 인코더 및 비디오 디코더 모두에서 기능하며 따라서 실행된다. 바람직하게는, 비디오 디코더는 하드웨어만 아니라 소프트웨로도 실행될 수 있다. 비디오 인코더에 대해서도 동일하다.
도 13은 실시형태에 따른 비디오 프레임 내의 화소의 블록을 인코딩하기 위한 인코더(40)의 개략적인 블록도이다.
화소의 현재 블록이, 동일 프레임 또는 이전 프레임 내의 화소의 이미 제공된 블록으로부터 모션 추정기(50)에 의한 모션 추정을 수행함으로써 예측된다. 모션 추정의 결과는, 인터 예측의 경우, 기준 블록과 연관된 모션 또는 변위 벡터이다. 모션 벡터는 화소 블록의 인터 예측을 출력하기 위해 모션 보상기(50)에 의해 사용된다.
인트라 예측기(49)는 화소의 현재 블록의 인트라 예측을 계산한다. 모션 추정기/보상기(50) 및 인트라 예측기(49)는, 화소의 현재 블록에 대한 인트라 예측 또는 인터 예측을 선택하는 선택기(51)에 입력된다. 선택기(51)로부터의 출력은 가산기(41) 형태의 에러 계산기에 입력되는데, 이 가산기는 화소의 현재 블록의 화소 값을 수신한다. 가산기(41)는 화소 블록과 그 예측 간의 화소 값의 차이로서 잔류 에러를 계산 및 출력한다.
에러는, 이산 코사인 변환에 의해서와 같이 변환기(42)에서 변환되고, 양자화기(43)에 의해 양자화된 후, 엔트로피 인코더에 의해서와 같은 인코더(44)에서 코딩된다. 인터 코딩에 있어서, 추정된 모션 벡터는, 화소의 현재 블록의 코딩된 표현을 생성하기 위해서 인코더(44)로 보내진다.
또한, 화소의 현재 블록에 대해서 변환 및 양자화된 잔여 에러는, 오리지널의 잔여 에러를 검색하기 위해서, 역 양자화기(45) 및 역 변환기(46)에 제공된다. 이 에러는 가산기(47)에 의해 모션 보상기(50) 또는 인트라 예측기(49)로부터 출력된 블록 예측에 가산되어, 화소의 다음 블록의 예측 및 코딩에 사용될 수 있는 화소의 기준 블록을 생성한다. 이 새로운 기준 블록은, 소정의 블록킹 아티팩트를 방지하기 위해서 기준 블록에 적용되는 소정의 디블록킹 필터링을 제어하기 위해서, 실시형태에 따라 필터링 제어 장치(100)에 의해 먼저 처리된다. 그 다음, 처리된 새로운 기준 블록은 프레임 버퍼(48) 내에 일시적으로 기억되는데, 여기서 인트라 예측기(49) 및 모션 추정기/보상기(50)에 대해서 이용할 수 있다.
도 14는 실시형태에 따른 필터링 제어 장치(100)를 포함하여 구성되는 디코더(60)의 대응하는 개략적인 블록도이다. 디코더(60)는 화소의 블록의 인코딩된 표현을 디코딩하기 위해, 엔트로피 디코더와 같은 디코더(61)를 포함하여 구성되어, 양자화 및 변환된 잔여 에러의 세트를 얻게 한다. 이들 잔여 에러는 역 양자화기(62)에 의해 디양자화(dequantized)되고 역 변환기(63)에 의해 역 변환되어, 잔여 에러의 세트를 얻게 한다.
이들 잔여 에러는 가산기(64)에서 화소의 기준 블록의 화소 값에 가산된다. 기준 블록은, 인터 또는 인트라 예측이 수행되는 지에 의존해서, 모션 추정기/보상기(67) 또는 인트라 예측기(66)에 의해 결정된다. 이에 의해, 선택기(68)는 가산기(64)와 모션 추정기/보상기(67)와 인트라 예측기(66)와 상호 접속한다. 가산기(64)로부터 출력된 화소의 결과적인 디코딩된 블록은, 소정의 블록킹 아티팩트를 방지하도록 적용된 소정의 디블록킹 필터를 제어하기 위해서, 실시형태에 따른 필터링 제어 장치(100)에 입력된다. 화소의 필터링된 블록은 디코더(60)로부터 출력되고, 더 바람직하게는 프레임 버퍼(65)에 일시적으로 제공되어, 디코딩되는 화소의 후속 블록에 대한 화소의 기준 블록으로서 사용될 수 있다. 이에 의해, 프레임 버퍼(65)는 모션 추정기/보상기(67)에 접속되어, 모션 추정기/보상기(67)에 이용 가능한 화소의 기억된 블록을 만들게 한다.
가산기(64)로부터의 출력은, 바람직하게는 또한 인트라 예측기(66)에 입력되어, 화소의 필터링되지 않은 기준 블록으로서 사용하게 된다.
도 13 및 도 14에 개시된 실시형태에 있어서, 필터링 제어 장치(100)는, 소위 인-루프 필터링으로 불리는 형태의 디블록킹 필터링을 제어한다. 디코더(60)에서의 다른 실행에 있어서, 필터링 제어 장치(100)는, 소위 후처리 필터링을 수행하도록 배열된다. 이 경우, 필터링 제어 장치(100)는 가산기(64), 프레임 버퍼(65), 인트라 예측기(66), 모션 추정기/보상기(67) 및 선택기(68)에 의해 형성된 루프 외측의 출력 프레임 상에서 동작한다. 그 다음, 디블록킹 필터링 및 필터링 제어는, 전형적으로 인코더에서 행해지지 않는다.
도 15는 필터링 제어 장치와 함께 디코더(60)를 수용하는 사용자 장치 또는 미디어 단말(80)의 개략적인 블록도이다. 사용자 장치(80)는 인코딩된 비디오 프레임의 인코딩된 비디오 스트림 상에서 동작하는 미디어 디코딩 기능을 갖는 소정의 장치일 수 있는데, 이에 의해 비디오 프레임을 디코딩하고, 비디오 데이터를 이용 가능하게 한다. 이러한 장치의 비제한적인 예는, 이동 전화기 및 그 밖의 포터블 미디어 플레이어, 태블릿(tablet), 데스크탑, 노트북, 퍼스널 비디오 레코더, 멀티미디어 플레이어, 비디오 스트리밍 서버, 셋탑 박스, TV, 컴퓨터, 디코더, 게임 콘솔 등과 같은 장치를 포함한다. 이 사용자 장치(80)는 인코딩된 비디오 프레임을 기억하도록 구성된 메모리(84)를 포함하여 구성된다. 이들 인코딩된 비디오 프레임은 사용자 장치(80) 자체에 의해 생성될 수 있다. 한편, 인코딩된 비디오 프레임은 몇몇 다른 장치에 의해 생성되고, 사용자 장치(80)로 무선, 유선 전송된다. 그 다음, 사용자 장치(80)는 송수신기(송신기 및 수신기) 또는 입력 및 출력 포트(82)를 포함하여 구성된다.
인코딩된 비디오 프레임은 메모리(84)로부터 도 14에 도시된 디코더와 같은 디코더(60)로 보내진다. 디코더(60)는 실시형태에 따른 필터링 제어 장치(100)을 포함하여 구성된다. 그 다음, 디코더(60)는 인코딩된 비디오 프레임을 디코딩된 비디오 프레임으로 디코딩한다. 디코딩된 비디오 프레임은 미디어 플레이어(86)에 제공되는데, 이 미디어 플레이어는 디코딩된 비디오 프레임을 비디오 데이터로 렌더링하도록 구성되고, 이 비디오 데이터는 사용자 장치(80)에 접속된 디스플레이 또는 스크린(88) 상에 디스플레이될 수 있다.
도 15에 있어서, 사용자 장치(80)는 디코더(60) 및 미디어 플레이어(86) 모두를 포함하여 구성되도록 도시되어 있는데, 디코더(60)는 미디어 플레이어(86)의 부분으로서 실행된다. 그런데, 이는 단지 예시적으로 보여진 것으로, 사용자 장치(80)에 대해서 실행 가능한 실시형태의 예를 제한하는 것은 아니다. 또한, 분산된 실행도 가능한데, 여기서 디코더(60) 및 미디어 플레이어(86)는, 본 명세서에서 사용된 바와 같이 사용자 장치(80)의 범위 내에서, 2개의 물리적으로 분리된 장치로 제공되는 것이 가능하다. 또한, 디스플레이(88)는 사용자 장치(80)에 접속된 분리 장치로서 제공될 수 있으며, 여기서 실제의 데이터 처리가 일어난다.
도 16은 실시형태에 따른 필터링 제어 장치를 포함하여 구성되는 도 13의 인코더와 같은 인코더를 포함하여 구성되는 사용자 장치(80)의 다른 실시형태를 도시한다. 그 다음, 인코더(40)는 I/O 유닛(82)에 의해 수신된 및/또는 사용자 장치(80) 자체에 의해 생성된 비디오 프레임을 인코딩하도록 구성된다. 후자의 경우, 사용자 장치(80)는, 바람직하게는, (비디오) 카메라에 접속된 형태와 같은 미디어 엔진 또는 레코더를 포함하여 구성된다. 선택적으로, 사용자 장치(80)는 실시형태에 따른 디코더 및 필터링 제어 장치를 갖는 미디어 플레이어(86)와 같은 미디어 플레이어(86)와 디스플레이(88)를 포함하여 구성된다.
도 17에 도시된 바와 같이, 도 13 및 도 14에 도시된 바와 같은 인코더(40) 및/또는 디코더(60)가, 송신 유닛(34)과 수신의 사용자 장치(36) 사이의 통신 네트워크(32) 내의 네트워크 노드인 또는 이에 속하는 네트워크 장치(30) 내에서 실행될 수 있다. 이러한 네트워크 장치(30)는, 예를 들어 수신의 사용자 장치(36)가 송신 유닛(34)으로부터 송신된 것과 다른 비디오 코딩 기준일 수 있거나 이를 선호하면, 하나의 비디오 코딩 기준에 따른 비디오를 다른 비디오 코딩 기준으로 변환하기 위한 장치일 수 있다. 네트워크 장치(30)는 무선 기지국, Node-B 또는 무선-기반 네트워크와 같은 통신 네트워크(32) 내의 소정의 다른 네트워크 노드 형태이거나 이들에 포함될 수 있다.
상기된 실시형태는, 본 발명의 소정의 예시적인 실시예로서 이해되어야 한다. 본 기술 분야의 당업자에 있어서는, 본 발명의 범위를 벗어남이 없이, 다양한 실시형태 조합 및 변경이 가능할 수 있는 것으로 이해된다. 특히, 다른 실시형태의 다른 부분의 해결책이 기술적으로 가능한 다른 구성과 결합될 수 있다. 그런데, 본 발명의 범위는 첨부된 특허청구범위에 의해 규정된다.
10 - 블록,
20 - 인접한 블록,
100 - 필터링 제어 장치.

Claims (22)

  1. 각 화소(11, 13, 15, 17)가 각각의 화소 값을 가진 비디오 프레임 내의 다중 화소(11, 13, 15, 17)의 블록(10)에 적용 가능한 필터링 제어를 위한 방법에 있어서,
    |p2i-2p1i+p0i|에 기반해서 상기 블록(10)의 화소만을 사용하여 상기 블록(10)에 대한 제1필터 결정 값을 계산하는 단계(S1)로서, i=0...N-1이고, N은 상기 블록(10)의 화소의 라인의 수이고, 화소의 라인은 화소의 행 또는 열이고, p0i는 상기 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내에서 상기 비디오 프레임 내의 다중 화소(21, 23, 25, 27)의 인접한 블록(20)에 대한 블록 바운더리(1)에 가장 근접한 화소(11)의 화소 값을 나타내고, p1i는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 화소(13)의 화소 값을 나타내며, p2i는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(10)에 제2의 다음의 가장 근접한 화소(15)의 화소 값을 나타내는 상기 계산하는 단계(S1);
    |q2i-2q1i+q0i|에 기반해서 상기 인접한 블록(20)의 화소만을 사용하여 상기 인접한 블록(20)에 대한 제2필터 결정 값을 계산하는 단계(S2)로서, i=0...N-1이고, N은 상기 인접한 블록(20)의 화소의 라인의 수이고, 화소의 라인은 화소의 행 또는 열이고, q0i는 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 화소(21)의 화소 값을 나타내고, q1i는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20)의 화소(23)의 화소 값을 나타내며, q2i는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 인접한 블록(20) 내의 화소(25)의 화소 값을 나타내며, 상기 화소의 제1라인(12) 및 상기 인접한 블록(20) 내의 대응하는 제1라인(22)은 상기 블록 바운더리(1)에 대한 라인과 대향하고 상기 블록 바운더리(1)에 수직인 상기 계산하는 단계(S2);
    상기 제1필터 결정 값과 제1문턱 값의 비교(S20)에 기반해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정하는 단계(S3); 및
    상기 제2필터 결정 값과 제2문턱 값의 비교(S23)에 기반해서, 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정하는 단계(S4)를 포함하는
    필터링 제어를 위한 방법.
  2. 제1항에 있어서,
    상기 제1필터 결정 값을 계산하는 단계(S1)는 |p20-2p10+p00|+|p23-2p13+p03|와 같이 상기 제1필터 결정 값을 계산(S1)하는 단계로서, p00는 화소의 상기 제1라인 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 화소의 상기 화소 값을 나타내고, p10는 화소의 상기 제1라인 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 화소의 상기 화소 값을 나타내며, p20는 화소의 상기 제1라인 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 화소의 상기 화소 값을 나타내고, p03는 상기 블록(10) 내의 화소의 제2라인 내에서 상기 블록 바운더리(1)에 가장 근접한 화소의 화소 값을 나타내고, p13는 화소의 상기 제2라인 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 화소의 화소 값을 나타내며, p23는 화소의 상기 제2라인 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소의 화소 값을 나타내는 계산하는 단계(S1)를 포함하고;
    상기 제2필터 결정 값을 계산하는 단계(S2)는 |q20-2q10+q00|+|q23-2q13+q03|와 같이 상기 제2필터 결정 값을 계산하는 단계(S2)로서, q00는 화소의 상기 대응하는 제1라인 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 상기 화소의 상기 화소 값을 나타내고, q10는 화소의 상기 대응하는 제1라인 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20)의 상기 화소의 상기 화소 값을 나타내며, q20는 화소의 상기 대응하는 제1라인 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 인접한 블록(20) 내의 상기 화소의 상기 화소 값을 나타내고, q03는 상기 인접한 블록(20) 내의 화소의 대응하는 제2라인 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q13는 화소의 상기 대응하는 제2라인 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20)의 화소의 화소 값을 나타내며, q23는 화소의 상기 대응하는 제2라인 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 인접한 블록(20) 내의 화소의 화소 값을 나타내는 계산하는 단계(S2)를 포함하는
    필터링 제어를 위한 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 얼마나 많은 화소를 필터링할지 결정하는 단계(S3)는:
    상기 제1필터 결정 값과 제1문턱 값을 비교하는 단계(S20);
    상기 제1필터 결정 값이 상기 제1문턱 값 이하이면, 상기 블록 바운더리(1)에 대해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 2개의 화소를 필터링하도록 결정하는 단계(S21); 및
    상기 제1필터 결정 값이 상기 제1문턱 값과 동등하거나 초과하면, 상기 블록 바운더리(1)에 대해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 하나의 화소를 필터링하도록 결정하는 단계(S20)를 포함하고;
    상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 얼마나 많은 화소를 필터링할지 결정하는 단계(S4)는:
    상기 제2필터 결정 값과 제2문턱 값을 비교하는 단계(S23);
    상기 제2필터 결정 값이 상기 제2문턱 값 이하이면, 상기 블록 바운더리(1)에 대해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 2개의 화소를 필터링하도록 결정하는 단계(S24); 및
    상기 제2필터 결정 값이 상기 제2문턱 값과 동등하거나 초과하면, 상기 블록 바운더리(1)에 대해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 하나의 화소를 필터링하도록 결정하는 단계(S25)를 포함하는
    필터링 제어를 위한 방법.
  4. 제1항 또는 제2항에 있어서,
    상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 얼마나 많은 화소를 필터링할지 결정하는 단계(S3)는:
    상기 제1필터 결정 값과 제1문턱 값을 비교하는 단계(S20);
    상기 제1필터 결정 값이 상기 제1문턱 값 이하이면, 상기 블록 바운더리(1)에 대해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 2개의 화소를 필터링하도록 결정하는 단계(S21); 및
    상기 제1필터 결정 값이 상기 제1문턱 값과 동등하거나 초과하면, 상기 블록 바운더리(1)에 대해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 화소를 필터링하지 않도록 결정하는 단계(S22)를 포함하고;
    상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 얼마나 많은 화소를 필터링할지 결정하는 단계(S4)는:
    상기 제2필터 결정 값과 제2문턱 값을 비교하는 단계(S23);
    상기 제2필터 결정 값이 상기 제2문턱 값 이하이면, 상기 블록 바운더리(1)에 대해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 2개의 화소를 필터링하도록 결정하는 단계(S24); 및
    상기 제2필터 결정 값이 상기 제2문턱 값과 동등하거나 초과하면, 상기 블록 바운더리(1)에 대해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 화소를 필터링하지 않도록 결정하는 단계(S25)를 포함하는
    필터링 제어를 위한 방법.
  5. 필터링 제어 장치(100)에 있어서,
    |p2i-2p1i+p0i|에 기반해서 블록(10)의 화소만을 사용하여 비디오 프레임 내의 다중 화소(11, 13, 15, 17)의 블록(10)에 대한 제1필터 결정 값을 계산하도록 구성된 제1결정 값 계산기(110)로서, i=0...N-1이고, N은 상기 블록(10)의 화소의 라인의 수이고, 화소의 라인은 화소의 행 또는 열이고, p0i는 상기 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내에서 상기 비디오 프레임 내의 다중 화소(21, 23, 25, 27)의 인접한 블록(20)에 대한 블록 바운더리(1)에 가장 근접한 화소(11)의 화소 값을 나타내고, p1i는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 화소(13)의 화소 값을 나타내며, p2i는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소(15)의 화소 값을 나타내는 상기 제1결정 값 계산기(110);
    |q2i-2q1i+q0i|에 기반해서 상기 인접한 블록(20)의 화소만을 사용하여 상기 인접한 블록(20)에 대한 제2필터 결정 값을 계산하도록 구성된 제2결정 값 계산기(120)로서, i=0...N-1이고, N은 상기 인접한 블록(20)의 화소의 라인의 수이고, 화소의 라인은 화소의 행 또는 열이고, q0i는 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 화소(21)의 화소 값을 나타내고, q1i는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20) 내의 화소(23)의 화소 값을 나타내며, q2i는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 인접한 블록(20) 내의 화소(25)의 화소 값을 나타내며, 상기 화소의 제1라인(12) 및 상기 인접한 블록(20) 내의 대응하는 제1라인(22)은 상기 블록 바운더리(1)에 대한 라인과 대향하고 상기 블록 바운더리(1)에 수직인 상기 제2결정 값 계산기(120);
    상기 제1결정 값 계산기(110)에 의해 계산된 상기 제1필터 결정 값에 기반해서, 상기 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정하도록 구성된 제1화소 결정기(130); 및
    상기 제2결정 값 계산기(120)에 의해 계산된 상기 제2필터 결정 값에 기반해서, 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정하도록 구성된 제2화소 결정기(140)를 포함하며,
    상기 제1결정 값 계산기(110)에 의해 계산된 상기 제1필터 결정 값과 제1문턱 값을 비교하도록 구성된 제1비교기(180); 및
    상기 제2결정 값 계산기(120)에 의해 계산된 상기 제2필터 결정 값과 제2문턱 값을 비교하도록 구성된 제2비교기(182)를 더 포함하는
    필터링 제어 장치.
  6. 제5항에 있어서,
    상기 제1결정 값 계산기(110)는 |p20-2p10+p00|+|p23-2p13+p03|와 같이 상기 제1필터 결정 값을 계산하도록 구성되고, p00는 화소의 상기 제1라인 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 화소의 상기 화소 값을 나타내고, p10는 화소의 상기 제1라인 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 화소의 상기 화소 값을 나타내며, p20는 화소의 상기 제1라인 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 화소의 상기 화소 값을 나타내고, p03는 상기 블록(10) 내의 화소의 제2라인 내에서 상기 블록 바운더리(1)에 가장 근접한 화소의 화소 값을 나타내고, p13는 화소의 상기 제2라인 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 화소의 화소 값을 나타내며, p23는 화소의 상기 제2라인 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소의 화소 값을 나타내며;
    상기 제2필터 결정 값 계산기(120)는 |q20-2q10+q00|+|q23-2q13+q03|와 같이 상기 제2필터 결정 값을 계산하도록 구성되고, q00는 화소의 상기 대응하는 제1라인 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 상기 화소의 상기 화소 값을 나타내고, q10는 화소의 상기 대응하는 제1라인 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20)의 상기 화소의 상기 화소 값을 나타내며, q20는 화소의 상기 대응하는 제1라인 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 인접한 블록(20) 내의 상기 화소의 상기 화소 값을 나타내고, q03는 상기 인접한 블록(20) 내의 화소의 대응하는 제2라인 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 화소의 화소 값을 나타내고, q13는 화소의 상기 대응하는 제2라인 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20)의 화소의 화소 값을 나타내며, q23는 화소의 상기 대응하는 제2라인 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 인접한 블록(20) 내의 화소의 화소 값을 나타내는
    필터링 제어 장치.
  7. 제5항 또는 제6항에 있어서,
    상기 제1화소 결정기(130)는 i) 상기 제1필터 결정 값이 상기 제1비교기(180)에 의해 결정된 바와 같이 상기 제1문턱 값 이하이면, 상기 블록 바운더리(1)에 대해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 2개의 화소를 필터링하도록 결정하고, ii) 상기 제1필터 결정 값이 상기 제1비교기(180)에 의해 결정된 바와 같이 상기 제1문턱 값과 동등하거나 초과하면, 상기 블록 바운더리(1)에 대해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 하나의 화소를 필터링하도록 결정하도록 구성되고;
    상기 제2화소 결정기(140)는 i) 상기 제2필터 결정 값이 상기 제2비교기(182)에 의해 결정된 바와 같이 상기 제2문턱 값 이하이면, 상기 블록 바운더리(1)에 대해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 2개의 화소를 필터링 하도록 결정하고, ii) 상기 제2필터 결정 값이 상기 제2비교기(182)에 의해 결정된 바와 같이 상기 제2문턱 값과 동등하거나 초과하면, 상기 블록 바운더리(1)에 대해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 하나의 화소를 필터링하도록 결정하도록 구성되는
    필터링 제어 장치.
  8. 제5항 또는 제6항에 있어서,
    상기 제1결정 값 계산기(110)에 의해 계산된 상기 제1필터 결정 값과 제1문턱 값을 비교하도록 구성된 제1비교기(180);
    상기 제2결정 값 계산기(120)에 의해 계산된 상기 제2필터 결정 값과 제2문턱 값을 비교하도록 구성된 제2비교기(182)를 더 포함하며;
    상기 제1화소 결정기(130)는, i) 상기 제1필터 결정 값이 상기 제1비교기(180)에 의해 결정된 바와 같이 상기 제1문턱 값 이하이면, 상기 블록 바운더리(1)에 대해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 2개의 화소를 필터링하도록 결정하고, ii) 상기 제1필터 결정 값이 상기 제1비교기(180)에 의해 결정된 바와 같이 상기 제1문턱 값과 동등하거나 초과하면, 상기 블록 바운더리(1)에 대해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 화소를 필터링하지 않도록 결정하도록 구성되고;
    상기 제2화소 결정기(140)는, i) 상기 제2필터 결정 값이 상기 제2비교기(182)에 의해 결정된 바와 같이 상기 제2문턱 값 이하이면, 상기 블록 바운더리(1)에 대해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 2개의 화소를 필터링하도록 결정하고, ii) 상기 제2필터 결정 값이 상기 제2비교기(182)에 의해 결정된 바와 같이 상기 제2문턱 값과 동등하거나 초과하면, 상기 블록 바운더리(1)에 대해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 화소를 필터링하지 않도록 결정하도록 구성되는
    필터링 제어 장치.
  9. 제5항 또는 제6항에 있어서,
    i) 상기 블록(10)과 연관된 양자화 파라미터에 기반해서 상기 제1문턱 값을 결정하고; ii) 상기 인접한 블록(20)과 연관된 상기 양자화 파라미터에 기반해서 상기 제2문턱 값을 결정하도록 구성된 문턱 결정기(170)를 더 포함하는
    필터링 제어 장치.
  10. 제5항 또는 제6항에 있어서,
    9×(q0j-p0j)-3×(q1j-p1j) / 16에 기반해서 제1오프셋 △을 계산하도록 구성된 제1오프셋 계산기(181)로서, p0j는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 가장 근접한 화소(11)의 화소 값을 나타내고, p1j는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 화소(13)의 화소 값을 나타내며, q0j는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 화소(21)의 화소 값을 나타내고, q1j는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20) 내의 화소(23)의 화소 값을 나타내는, 제1오프셋 계산기(181);
    상기 제1오프셋 계산기(181)에 의해 계산된 상기 제1오프셋을 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 화소(11)의 상기 화소 값에 가산함으로써, 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 화소(11)의 상기 화소 값을 수정하도록 구성된 제1화소 수정기(190);
    상기 제1오프셋 계산기(181)에 의해 계산된 상기 제1오프셋을 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 상기 화소(21)의 상기 화소 값으로부터 감산함으로써, 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 상기 화소(21)의 상기 화소 값을 수정하도록 구성된 제2화소 수정기(192);
    상기 제1필터 결정 값이 상기 제1비교기(180)에 의해 결정된 바와 같이 상기 제1문턱 값 이하이면, p0j+p2j-2p1j+2△ / 4에 기반해서 제2오프셋을 계산하도록 구성된 제2오프셋 계산기(183)로서, p2j는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 화소(15)의 화소 값을 나타내는, 제2오프셋 계산기(183);
    상기 제1필터 결정 값이 상기 제1비교기(180)에 의해 결정된 바와 같이 상기 제1문턱 값 이하이면, 상기 제2오프셋 계산기(183)에 의해 계산된 상기 제2오프셋을 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 화소(13)의 상기 화소 값에 가산함으로써, 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 화소(13)의 상기 화소 값을 수정하도록 구성된 제3화소 수정기(194);
    상기 제2필터 결정 값이 상기 제2비교기(182)에 의해 결정된 바와 같이 상기 제2문턱 값 이하이면, q0j+q2j-2q1j-2△ / 4에 기반해서 제3오프셋을 계산도록 구성된 제3오프셋 계산기(185)로서, q2j는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 인접한 블록(20) 내의 화소(25)의 화소 값을 나타내는 상기 제3오프셋 계산기(185); 및
    상기 제2필터 결정 값이 상기 제2비교기(182)에 의해 결정된 바와 같이 상기 제2문턱 이하이면, 상기 제3오프셋 계산기(185)에 의해 계산된 상기 제3오프셋을 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20) 내의 상기 화소(23)의 상기 화소 값에 가산함으로써, 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20) 내의 상기 화소(23)의 상기 화소 값을 수정하도록 구성된 제4화소 수정기(196)를 더 포함하는
    필터링 제어 장치.
  11. 제5항 또는 제6항에 있어서,
    상기 제1필터 결정 값과 상기 제2필터 결정 값의 합과 문턱 값을 비교하도록 구성된 제3비교기(184)를 더 포함하며,
    상기 제1화소 결정기(130)는, 상기 제1필터 결정 값과 상기 제2필터 결정 값의 상기 합이 상기 제3비교기(184)에 의해 결정된 바와 같이 상기 문턱 값 이하이면, 상기 제1결정 값 계산기(110)에 의해 계산된 상기 제1필터 결정 값에 기반해서, 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정하도록 구성되고;
    상기 제2화소 결정기(140)는, 상기 제1필터 결정 값과 상기 제2필터 결정 값의 상기 합이 상기 제3비교기(184)에 의해 결정된 바와 같이 상기 문턱 값 이하이면, 상기 제2결정 값 계산기(120)에 의해 계산된 상기 제2필터 결정 값에 기반해서, 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정하도록 구성되는
    필터링 제어 장치.
  12. 인코더(40)로서,
    청구항 제5항 또는 제6항에 따른 필터링 제어 장치(100)를 포함하는
    인코더.
  13. 사용자 장치(80)로서,
    비디오 프레임을 기억하도록 구성된 메모리(84); 및
    상기 비디오 프레임을 인코딩된 비디오 프레임으로 인코딩하도록 구성된 청구항 제12항에 따른 인코더(40)를 포함하며,
    상기 메모리(84)는 상기 인코딩된 비디오 프레임을 기억하도록 더 구성되는
    사용자 장치.
  14. 디코더(60)로서,
    청구항 제5항 또는 제6항에 따른 필터링 제어 장치(100)를 포함하는
    디코더.
  15. 사용자 장치(80)로서,
    인코딩된 비디오 프레임을 기억하도록 구성된 메모리(84);
    상기 인코딩된 비디오 프레임을 디코딩된 비디오 프레임으로 디코딩하도록 구성된 청구항 제14항에 따른 디코더(60); 및
    상기 디코딩된 비디오 프레임을 디스플레이(88) 상에서 디스플레이 가능한 비디오 데이터로 렌더링하도록 구성된 미디어 플레이어(86)를 포함하는
    사용자 장치.
  16. 각 화소(11, 13, 15, 17)가 각각의 화소 값을 가진 비디오 프레임 내의 다중 화소(11, 13, 15, 17)의 블록(10)의 필터링 제어를 위한 컴퓨터 프로그램(74)을 저장한 기록 매체로서,
    상기 컴퓨터 프로그램(74)은 컴퓨터(70) 상에서 구동할 때, 상기 컴퓨터(70)가,
    |p2i-2p1i+p0i|에 기반해서 상기 블록(10)의 화소만을 사용하여 상기 블록(10)에 대한 제1필터 결정 값을 계산하고, i=0...N-1이고, N은 상기 블록(10)의 화소의 라인의 수이고, 화소의 라인은 화소의 행 또는 열이고, p0i는 상기 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내에서 상기 비디오 프레임 내의 다중 화소(21, 23, 25, 27)의 인접한 블록(20)에 대한 블록 바운더리(1)에 가장 근접한 화소(11)의 화소 값을 나타내고, p1i는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 화소(13)의 화소 값을 나타내며, p2i는 화소(11, 13, 15, 17)의 상기 제1라인(12) 내에서 상기 블록 바운더리(10)에 제2의 다음의 가장 근접한 화소(13)의 화소 값을 나타내며;
    |q2i-2q1i+q0i|에 기반해서, 상기 인접한 블록(20)의 화소만을 사용하여 상기 인접한 블록(20)에 대한 제2필터 결정 값을 계산하고, i=0...N-1이고, N은 상기 인접한 블록(20)의 화소의 라인의 수이고, 화소의 라인은 화소의 행 또는 열이고, q0i는 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 가장 근접한 상기 인접한 블록(20) 내의 화소(21)의 화소 값을 나타내고, q1i는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 다음의 가장 근접한 상기 인접한 블록(20)의 화소(23)의 화소 값을 나타내며, q2i는 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내에서 상기 블록 바운더리(1)에 제2의 다음의 가장 근접한 상기 인접한 블록(20) 내의 화소(23)의 화소 값을 나타내며, 상기 화소의 제1라인(12) 및 상기 인접한 블록(20) 내의 대응하는 제1라인(22)은 상기 블록 바운더리(1)에 대한 라인과 대향하고 상기 블록 바운더리(1)에 수직이고;
    상기 제1필터 결정 값에 기반해서, 상기 블록(10) 내의 화소(11, 13, 15, 17)의 제1라인(12) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정하고;
    상기 제2필터 결정 값에 기반해서, 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 대응하는 제1라인(22) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정하며;
    상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 얼마나 많은 화소를 필터링할지의 결정은, 상기 제1필터 결정 값과 제1문턱 값의 비교(S20)에 기반해서 상기 블록(10) 내의 화소(11, 13, 15, 17)의 상기 제1라인(12) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정(S3)하고,
    상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 얼마나 많은 화소를 필터링할지의 결정은, 상기 제2필터 결정 값과 제2문턱 값의 비교(S23)에 기반해서 상기 인접한 블록(20) 내의 화소(21, 23, 25, 27)의 상기 대응하는 제1라인(22) 내의 얼마나 많은 화소를 상기 블록 바운더리(1)에 대해서 필터링할지를 결정(S4)하도록 하는 코드 수단을 포함하는
    컴퓨터 프로그램을 저장한 기록 매체.
  17. 컴퓨터 프로그램을 저장한 기록 매체로서,
    컴퓨터 판독 가능한 코드 수단과, 상기 컴퓨터 판독 가능 코드 수단에 기억된 제16항에 따른 컴퓨터 프로그램(74)을 포함하는
    컴퓨터 프로그램을 저장한 기록 매체.
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
KR1020137025374A 2011-03-01 2011-12-16 디블록킹 필터링 제어 KR101584420B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161447862P 2011-03-01 2011-03-01
US61/447,862 2011-03-01
PCT/SE2011/051526 WO2012118421A1 (en) 2011-03-01 2011-12-16 Deblocking filtering control

Publications (2)

Publication Number Publication Date
KR20130139341A KR20130139341A (ko) 2013-12-20
KR101584420B1 true KR101584420B1 (ko) 2016-01-22

Family

ID=45496239

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137025374A KR101584420B1 (ko) 2011-03-01 2011-12-16 디블록킹 필터링 제어

Country Status (11)

Country Link
US (6) US9641841B2 (ko)
EP (2) EP3001682B1 (ko)
JP (1) JP5924700B2 (ko)
KR (1) KR101584420B1 (ko)
CN (1) CN103430537B (ko)
AU (1) AU2011361032C1 (ko)
DK (2) DK3001682T3 (ko)
ES (2) ES2627285T3 (ko)
PL (1) PL3001682T3 (ko)
PT (1) PT3001682T (ko)
WO (1) WO2012118421A1 (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9413477B2 (en) * 2010-05-10 2016-08-09 Microsoft Technology Licensing, Llc Screen detector
PL3001682T3 (pl) * 2011-03-01 2017-07-31 Telefonaktiebolaget Lm Ericsson (Publ) Sterowanie filtrowaniem pozbywania się bloków
US20120230423A1 (en) * 2011-03-10 2012-09-13 Esenlik Semih Line memory reduction for video coding and decoding
US8767824B2 (en) * 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
CN107347157B (zh) * 2011-07-22 2020-03-17 Sk电信有限公司 视频解码装置
EP2774359B1 (en) * 2011-11-04 2015-12-30 Panasonic Intellectual Property Corporation of America Deblocking filtering with modified image block boundary strength derivation
KR20140053448A (ko) * 2012-10-25 2014-05-08 에스케이텔레콤 주식회사 스테레오스코픽 비디오에서 제1영상에 대한 부호화정보로부터 제2영상을 디블록킹 필터링하는 방법 및 장치
US9906790B2 (en) * 2014-03-14 2018-02-27 Qualcomm Incorporated Deblock filtering using pixel distance
US10136141B2 (en) 2014-06-11 2018-11-20 Qualcomm Incorporated Determining quantization parameter (QP) values and delta QP values for palette coded blocks in video coding
US9924175B2 (en) 2014-06-11 2018-03-20 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
CN105992011B (zh) * 2015-02-26 2019-04-09 扬智科技股份有限公司 环路滤波的计算方法及装置
CN109891895A (zh) * 2016-08-21 2019-06-14 Lg电子株式会社 图像编码/解码方法及其装置
KR20240066303A (ko) * 2016-12-28 2024-05-14 소니그룹주식회사 화상 처리 장치 및 화상 처리 방법
CN106604039B (zh) * 2016-12-28 2020-07-31 北京奇艺世纪科技有限公司 一种滤波方法及装置
TW201842781A (zh) * 2017-04-06 2018-12-01 美商松下電器(美國)知識產權公司 編碼裝置、解碼裝置、編碼方法及解碼方法
TW201842768A (zh) * 2017-04-06 2018-12-01 美商松下電器(美國)知識產權公司 編碼裝置、解碼裝置、編碼方法及解碼方法
EP3609185A4 (en) 2017-04-06 2020-03-18 Panasonic Intellectual Property Corporation of America CODING DEVICE, DECODING DEVICE, CODING METHOD AND DECODING METHOD
TW201842782A (zh) 2017-04-06 2018-12-01 美商松下電器(美國)知識產權公司 編碼裝置、解碼裝置、編碼方法及解碼方法
TWI812378B (zh) * 2017-04-06 2023-08-11 美商松下電器(美國)知識產權公司 解碼裝置、編碼裝置及電腦可讀取之非暫時性媒體
TWI833248B (zh) * 2017-04-06 2024-02-21 美商松下電器(美國)知識產權公司 解碼方法及編碼方法
TWI832814B (zh) 2017-04-06 2024-02-21 美商松下電器(美國)知識產權公司 解碼裝置及編碼裝置
CN110495168B (zh) 2017-04-06 2021-12-07 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法及解码方法
WO2019135446A1 (ko) * 2018-01-08 2019-07-11 삼성전자 주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
JP7293460B2 (ja) * 2018-03-28 2023-06-19 華為技術有限公司 効率的なデブロッキングを実行するための画像処理デバイス及び方法
CN111971961A (zh) * 2018-03-28 2020-11-20 华为技术有限公司 图像处理设备和执行有效去块效应的方法技术领域
WO2020030192A1 (en) 2018-08-10 2020-02-13 Huawei Technologies Co., Ltd. Apparatus and method for performing deblocking
US11245896B1 (en) * 2021-02-26 2022-02-08 Realtek Semiconductor Corporation Deblocking filter level decision method

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5492133A (en) * 1977-12-29 1979-07-21 Fujitsu Ltd Image data filtering system
US7227901B2 (en) * 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
KR100624429B1 (ko) * 2003-07-16 2006-09-19 삼성전자주식회사 칼라 영상을 위한 비디오 부호화/복호화 장치 및 그 방법
JP2005123732A (ja) 2003-10-14 2005-05-12 Matsushita Electric Ind Co Ltd デブロックフィルタ処理装置およびデブロックフィルタ処理方法
US7430336B2 (en) * 2004-05-06 2008-09-30 Qualcomm Incorporated Method and apparatus for image enhancement for low bit rate video compression
NO322722B1 (no) * 2004-10-13 2006-12-04 Tandberg Telecom As Fremgangsmate for videokoding gjennom reduksjon av blokkartefakter
US8503521B2 (en) * 2007-01-16 2013-08-06 Chih-Ta Star SUNG Method of digital video reference frame compression
CN101321276B (zh) * 2007-06-10 2012-06-20 华为技术有限公司 去块效应的方法及装置
US20090285308A1 (en) * 2008-05-14 2009-11-19 Harmonic Inc. Deblocking algorithm for coded video
US8761538B2 (en) 2008-12-10 2014-06-24 Nvidia Corporation Measurement-based and scalable deblock filtering of image data
WO2012044074A2 (ko) 2010-09-28 2012-04-05 삼성전자 주식회사 적응적 필터링 방법 및 장치
PL3001682T3 (pl) 2011-03-01 2017-07-31 Telefonaktiebolaget Lm Ericsson (Publ) Sterowanie filtrowaniem pozbywania się bloków

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Matthias N. et al: "Reduction of operations in the critical path of the deblocking filter", MPEG or ISO/IEC JTC1/SC29/WG11, no. m18974, 2011.1.22.

Also Published As

Publication number Publication date
CN103430537B (zh) 2016-10-12
ES2627285T3 (es) 2017-07-27
US20130329814A1 (en) 2013-12-12
EP3001682B1 (en) 2017-03-01
JP5924700B2 (ja) 2016-05-25
AU2011361032A1 (en) 2013-09-12
PL3001682T3 (pl) 2017-07-31
EP2681913A1 (en) 2014-01-08
US20180213262A1 (en) 2018-07-26
JP2014511632A (ja) 2014-05-15
WO2012118421A1 (en) 2012-09-07
AU2011361032C1 (en) 2015-04-09
US11134277B2 (en) 2021-09-28
US11575945B2 (en) 2023-02-07
DK2681913T3 (da) 2016-02-29
EP3001682A1 (en) 2016-03-30
KR20130139341A (ko) 2013-12-20
PT3001682T (pt) 2017-05-18
US9955188B2 (en) 2018-04-24
US9641841B2 (en) 2017-05-02
ES2562009T3 (es) 2016-03-02
US20220014794A1 (en) 2022-01-13
US20200244999A1 (en) 2020-07-30
CN103430537A (zh) 2013-12-04
DK3001682T3 (en) 2017-06-06
EP2681913B1 (en) 2015-11-25
US20230156237A1 (en) 2023-05-18
AU2011361032B2 (en) 2014-10-02
US20170272781A1 (en) 2017-09-21
US10623780B2 (en) 2020-04-14

Similar Documents

Publication Publication Date Title
KR101584420B1 (ko) 디블록킹 필터링 제어
KR101670116B1 (ko) 디블록킹 필터링
US9565436B2 (en) Method for filter control and a filtering control device

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 5