KR102206225B1 - 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법 - Google Patents

에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법 Download PDF

Info

Publication number
KR102206225B1
KR102206225B1 KR1020200056585A KR20200056585A KR102206225B1 KR 102206225 B1 KR102206225 B1 KR 102206225B1 KR 1020200056585 A KR1020200056585 A KR 1020200056585A KR 20200056585 A KR20200056585 A KR 20200056585A KR 102206225 B1 KR102206225 B1 KR 102206225B1
Authority
KR
South Korea
Prior art keywords
sample
filtering
sides
samples
block
Prior art date
Application number
KR1020200056585A
Other languages
English (en)
Other versions
KR20200053462A (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
Priority claimed from KR1020120039422A external-priority patent/KR20120125160A/ko
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Publication of KR20200053462A publication Critical patent/KR20200053462A/ko
Application granted granted Critical
Publication of KR102206225B1 publication Critical patent/KR102206225B1/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
    • 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
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

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

Abstract

본 발명은 영상 부호화/복호화 방법에 관한 것으로, 더욱 자세하게는 에러에 강인한 인-루프 필터링을 수행하는 방법과 이를 위한 시그널링 방법에 관한 것이다. 본 발명의 일 실시예 따르면, 제한된 인트라 예측(Constrained Intra Prediction: CIP) 모드의 사용 여부를 판별하는 단계, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들을 판별하는 단계 및 제한된 인트라 예측 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들에 기반하여 필터링 대상 경계의 양측에 위치하는 샘플들에 대한 인-루프 필터의 적용 여부를 결정하는 단계를 포함하는 영상 복호화 방법이 제공된다.

Description

에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법{VIDEO ENCODING/DECODING METHOD USING ERROR-RESILIENT IN-LOOP FILTER AND SIGNALING METHOD RELATING TO THE SAME}
본 발명은 영상 부호화/복호화 방법에 관한 것으로, 더욱 자세하게는 에러에 강인한 인-루프 필터링을 수행하는 방법과 이를 위한 시그널링 방법에 관한 것이다.
최근 HD(High Definition) 해상도를 지원하는 방송 시스템이 국내뿐만 아니라 세계적으로 확대되면서, 많은 사용자가 고해상도, 고화질의 영상에 익숙해지고 있으며, 이에 따라 많은 기관들이 차세대 영상기기에 대한 개발에 박차를 가하고 있다. 또한, HDTV와 더불어 HDTV의 4배 이상의 해상도를 지원하는 UHD(Ultra High Definition)에 대한 관심이 증대되면서, 더욱 높은 해상도, 고화질의 영상에 대한 압축 기술이 요구되고 있다.
영상의 압축을 위해, 선행하는 픽쳐 및/또는 뒤에 나오는 픽쳐로부터 현재 픽쳐에 포함된 픽셀 값을 예측하는 인터(inter) 예측 기술, 픽쳐 내의 픽셀 정보를 이용하여 픽셀 값을 예측하는 인트라(intra) 예측 기술, 출현 빈도가 높은 심볼(symbol)에 짧은 부호를 할당하고 출현 빈도가 낮은 심볼에 긴 부호를 할당하는 엔트로피 부호화 기술 등이 사용될 수 있다.
본 발명의 목적은 에러에 강인한 인-루프 필터링을 이용한 영상 부호화/복호화 방법 및 그 장치를 제공함에 있다.
본 발명의 다른 목적은 제한된 인트라 예측(Constrained Intra Prediction: CIP) 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반하여 인-루프 필터링을 수행하는 방법을 제공함에 있다.
[1] 본 발명의 일 실시예에 따르면 영상 부호화 방법이 제공된다. 상기 영상 부호화 방법은 제한된 인트라 예측(Constrained Intra Prediction: CIP) 모드의 사용 여부를 판별하는 단계, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들을 판별하는 단계 및 제한된 인트라 예측 모드의 사용 여부와 부호화 파라미터들에 기반하여 필터링 대상 경계의 양측에 위치하는 샘플들에 대한 인-루프 필터의 적용 여부를 결정하는 단계를 포함한다.
[2] [1]에 있어서, 인-루프 필터는 디블록킹 필터일 수 있다.
[3] [2]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용하지 않을 수 있다.
[4] [2]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들 중 인트라 예측 모드로 부호화된 블록에 속하는 샘플들에 디블록킹 필터를 적용하지 않고, 필터링 대상 경계의 양측에 위치하는 샘플들 중 인터 예측 모드로 부호화된 블록에 속하는 샘플들에 디블록킹 필터를 적용할 수 있다.
[5] [2]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용하지 않을 수 있다.
[6] 본 발명의 다른 일 실시예에 따르면 영상 복호화 방법이 제공된다. 상기 영상 복호화 방법은 제한된 인트라 예측(Constrained Intra Prediction: CIP) 모드의 사용 여부를 판별하는 단계, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들을 판별하는 단계 및 제한된 인트라 예측 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들에 기반하여 필터링 대상 경계의 양측에 위치하는 샘플들에 대한 인-루프 필터의 적용 여부를 결정하는 단계를 포함한다.
[7] [6]에 있어서, 인-루프 필터는 디블록킹 필터일 수 있다.
[8] [7]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인트라 예측 모드로 복호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용할 수 있다.
[9] [7]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용하지 않을 수 있다.
[10] [7]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용할 수 있다.
[11] [7]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들 중 인트라 예측 모드로 복호화된 블록에 속하는 샘플들에 디블록킹 필터를 적용하지 않고, 필터링 대상 경계의 양측에 위치하는 샘플들 중 인터 예측 모드로 복호화된 블록에 속하는 샘플들에 디블록킹 필터를 적용할 수 있다.
[12] [7]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용할 수 않을 수 있다.
[13] 본 발명의 또 다른 일 실시예에 따르면 영상 복호화 방법이 제공된다. 상기 영상 복호화 방법은 제한된 디블록킹 필터의 사용 여부를 나타내는 지시자를 파싱하는 단계, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들을 판별하는 단계 및 제한된 디블록킹 필터의 사용 여부를 나타내는 지시자와 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들에 기반하여 필터링 대상 경계의 양측에 위치하는 샘플들에 대한 디블록킹 필터의 적용 여부를 결정하는 단계를 포함한다.
[14] [13]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들 중 인트라 예측 모드로 복호화된 블록에 속하는 샘플들에 디블록킹 필터를 적용하지 않고, 필터링 대상 경계의 양측에 위치하는 샘플들 중 인터 예측 모드로 복호화된 블록에 속하는 샘플들에 디블록킹 필터를 적용할 수 있다.
[15] [13]에 있어서, 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용할 수 않을 수 있다.
본 발명에 따르면, 에러에 강인한 인-루프 필터링을 수행할 수 있다.
본 발명에 따르면, 인터 예측 모드로 부호화된 영역을 정상적으로 복원할 수 없는 경우에도, 인트라 예측 모드로 부호화된 블록을 정상적으로 복호화할 수 있다.
본 발명에 따르면, 인트라 예측 모드로 부호화된 영역의 복원 결과가 부호화기 및 복호화기에서 동일하도록 유지할 수 있다.
도 1은 영상 부호화기의 구조의 일 예를 나타내는 블록도이다.
도 2는 영상 복호화기의 구조의 일 예를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 인-루프 필터링 방법(부호화)을 나타낸 흐름도이다.
도 4는 제한된 인트라 예측이 수행되는 일 예를 나타내는 개념도이다.
도 5는 제한된 인트라 예측 모드로 부호화된 블록에 대한 인-루프 필터링을 수행하는 방법을 나타낸 흐름도이다.
도 6은 필터링 대상 경계의 양측에 위치하는 블록이 모두 인트라 예측 모드로 부호화된 일 예를 나타낸다.
도 7은 필터링 대상 경계의 양측에 위치하는 블록이 모두 인터 예측 모드로 부호화된 일 예를 나타낸다.
도 8 및 도 9는 필터링 대상 경계의 양측에 위치하는 블록이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 일 예를 나타낸다.
도 10은 CIP 모드 및 PCM 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반한 디블록킹 필터링을 수행하는 방법을 나타낸 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 인-루프 필터링 방법(복호화)을 나타낸 흐름도이다.
도 12는 본 발명의 일 실시예에 따른 영상 부호화 방법을 나타낸 흐름도이다.
도 13은 본 발명의 일 실시예에 따른 영상 복호화 방법을 나타낸 흐름도이다.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명하기로 한다. 단, 본 발명의 실시예를 설명함에 있어서, 공지의 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있거나 "접속되어" 있다고 서술되어 있는 경우, 다른 구성 요소에 직접 연결되어 있거나, 접속되어 있을 수 있으나, 또 다른 구성요소가 중간에 존재할 수도 있다. 또한, 본 발명에서 특정 구성 요소를 "포함"한다고 서술되어 있는 경우, 해당 구성 요소 이외의 구성 요소를 배제하는 것이 아니라, 추가적인 구성 요소가 본 발명의 실시예 또는 기술적 사상의 범위에 포함될 수 있음을 의미한다.
"제 1", "제 2" 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되지 않는다. 즉, 상기 용어 들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 따라서, 제 1 구성 요소는 제 2 구성 요소로 명명될 수 있고, 마찬가지로 제 2 구성요소도 제 1 구성 요소로 명명될 수 있다.
또한, 본 발명의 실시예에 나타나는 구성 요소는 서로 다른 특징적인 기능을 수행하는 것을 나타내기 위해 독립적으로 도시될 뿐, 각 구성 요소가 하나의 하드웨어 또는 소프트웨어로 구현될 수 없음을 의미하는 것은 아니다. 즉, 각 구성 요소는 설명의 편의상 구분된 것으로, 복수의 구성 요소가 합쳐져 하나의 구성 요소로 동작하거나, 하나의 구성 요소가 복수의 구성 요소로 나뉘어져 동작할 수 있고, 이는 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위로 포함된다.
또한, 일부 구성 요소는 본 발명의 본질적인 기능을 수행하는 필수 구성 요소가 아닌 성능의 향상을 위한 선택적 구성 요소일 수 있다. 본 발명은 선택적 구성 요소를 제외하고 필수 구성 요소만을 포함한 구조로도 구현될 수 있으며, 필수 구성 요소만을 포함한 구조 역시 본 발명의 권리 범위에 포함된다.
도 1은 영상 부호화기의 구조의 일 예를 나타내는 블록도이다.
영상 부호화기(100)는 움직임 예측부(111), 움직임 보상부(112), 인트라 예측부(120), 스위치(115), 감산기(125), 변환부(130), 양자화부(140), 엔트로피 부호화부(150), 역양자화부(160), 역변환부(170), 가산기(175), 필터부(180) 및 참조 픽쳐 버퍼(190)를 포함한다.
영상 부호화기(100)는 입력 영상을 인트라 예측 모드(intra prediction mode) 또는 인터 예측 모드(inter prediction mode)로 부호화하여 비트스트림(bitstream)을 출력한다. 인트라 예측은 화면 내 예측, 인터 예측은 화면 간 예측을 의미한다. 영상 부호화기(100)는 스위치(115)의 전환을 통해 인트라 예측 모드와 인터 예측 모드 사이를 천이한다. 영상 부호화기(100)는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분(residual)을 부호화한다.
인트라 예측 모드의 경우, 인트라 예측부(120)는 부호화 대상 블록 주변의 이미 부호화된 블록의 픽셀 값을 이용한 공간적 예측을 수행하여 예측 블록을 생성한다.
인터 예측 모드의 경우, 움직임 예측부(111)는 참조 픽쳐 버퍼(190)에 저장되어 있는 참조 픽쳐 내에서 입력 블록과 가장 매칭이 잘 되는 참조 블록을 찾아서 움직임 벡터를 구한다. 움직임 보상부(112)는 상기 움직임 벡터를 이용하여 움직임 보상을 수행하고 예측 블록을 생성한다. 여기서, 움직임 벡터는 인터 예측에 사용되는 2차원 벡터이며, 현재 부호화/복호화의 대상 블록과 참조 블록 사이의 오프셋을 나타낸다.
감산기(125)는 입력 블록과 예측 블록의 차분에 기반하여 차분 블록(residual block)을 생성하고, 변환부(130)는 상기 차분 블록을 변환(transform)하여 변환 계수(transform coefficient)를 출력한다. 양자화부(140)는 상기 변환 계수를 양자화하여 양자화된 계수(quantized coefficient)를 출력한다.
엔트로피 부호화부(150)는 부호화/양자화 과정에서 획득한 정보에 기반한 엔트로피 부호화를 수행하여 비트스트림을 출력한다. 엔트로피 부호화는 빈번하게 발생되는 심볼(symbol)을 적은 수의 비트로 표현함으로써 부호화의 대상 심볼에 대한 비트열의 크기를 감소시킨다. 따라서, 엔트로피 부호화를 통해 영상의 압축 성능의 향상을 기대할 수 있다. 엔트로피 부호화부(150)는 엔트로피 부호화를 위해 지수 골룸(exponential golomb), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법을 사용할 수 있다.
한편, 부호화된 픽쳐는 인터 예측을 수행하기 위한 참조 픽쳐로 사용되기 위해 다시 복호화되어 저장될 필요가 있다. 따라서, 역양자화부(160)는 양자화된 계수를 역양자화하고, 역변화부(170)는 역양자화된 계수를 역변환(inverse transform)하여 복원된 차분 블록을 출력한다. 가산기(175)는 예측 블록에 복원된 차분 블록을 더하여 복원 블록을 생성한다.
필터부(180)는 적응적 인-루프(in-loop) 필터로도 불리며, 복원 블록에 디블록킹 필터링(deblocking filtering), SAO(Sample Adaptive Offset) 보상, ALF(Adaptive Loop Filtering) 중 적어도 하나 이상을 수행한다. 디블록킹 필터링은 블록 간 경계에 생긴 블록 왜곡을 제거하는 것을 의미하고, SAO 보상은 코딩 에러를 보상하기 위해 픽셀 값에 적정 오프셋(offset)을 더해주는 것을 의미한다. 또한, ALF는 복원된 영상과 원래의 영상을 비교한 값에 기반하여 필터링을 수행하는 것을 의미한다.
도 2는 영상 복호화기의 구조의 일 예를 나타내는 블록도이다.
영상 복호화기(200)는 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 움직임 보상부(250), 가산기(255), 필터부(260) 및 참조 픽쳐 버퍼(270)를 포함한다.
영상 복호화기(200)는 비트스트림을 인트라 예측 모드 또는 인터 예측 모드로 복호화하여 복원 영상을 출력한다. 영상 복호화기(200)는 스위치의 전환을 통해 인트라 예측 모드와 인터 예측 모드 사이를 천이한다. 영상 복호화기(200)는 비트스트림으로부터 차분 블록을 획득하여 예측 블록을 생성한 후, 차분 블록을 더하여 복원 블록을 생성한다.
엔트로피 복호화부(210)는 확률 분포에 기반한 엔트로피 복호화를 수행한다. 엔트로피 복호화 과정은 상술한 엔트로피 부호화 과정의 반대과정이다. 즉, 엔트로피 복호화부(210)는 빈번하게 발생되는 심볼을 적은 수의 비트로 표현한 비트스트림으로부터 양자화된 계수를 포함하는 심볼을 생성한다.
역양자화부(220)는 양자화된 계수를 역양자화하고, 역변환부(230)는 역양자화된 계수를 역변환하여 차분 블록을 생성한다.
인트라 예측 모드의 경우, 인트라 예측부(240)는 복호화 대상 블록 주변의 이미 복호화된 블록의 픽셀 값을 이용한 공간적 예측을 수행하여 예측 블록을 생성한다.
인터 예측 모드의 경우, 움직임 보상부(250)는 움직임 벡터 및 참조 픽쳐 버퍼(270)에 저장된 참조 픽쳐를 이용한 움직임 보상을 수행하여 예측 블록을 생성한다.
가산기(255)는 차분 블록에 예측 블록을 더하고, 필터부(260)는 가산기를 거친 블록에 디블록킹 필터링, SAO 보상, ALF 중 적어도 하나 이상을 수행하여 복원 영상을 출력한다.
이하, 블록은 부호화/복호화의 단위를 의미한다. 부호화/복호화 과정에서, 영상은 소정의 크기로 분할되어 부호화/복호화된다. 따라서, 블록은 매크로 블록(Macro Block: MB), 부호화 유닛(Coding Unit: CU), 예측 유닛(Prediction Unit: PU), 변환 유닛(Transform Unit: TU) 등으로도 불릴 수도 있으며, 하나의 블록은 더 작은 크기의 하위 블록으로 분할될 수도 있다.
여기서, 예측 유닛은 예측 및/또는 움직임 보상 수행의 기본 단위를 의미한다. 예측 유닛은 복수의 파티션(partition)으로 분할될 수 있으며, 각각의 파티션은 예측 유닛 파티션(prediction unit partition)으로 불린다. 예측 유닛이 복수의 파티션으로 분할된 경우, 예측 유닛 파티션은 예측 및/또는 움직임 보상 수행의 기본 단위가 될 수 있다. 이하, 본 발명의 실시예에서는 예측 유닛은 예측 유닛 파티션을 의미할 수도 있다.
또한, 본 명세서에서 샘플을 이용한다는 것은 해당 샘플의 정보, 예를 들어 픽셀 값 등을 이용한다는 것을 의미할 수 있다. 다만, 설명의 편의를 위해, "샘플 정보를 이용한다" 또는 "픽셀 값을 이용한다"는 표현을 "샘플을 이용한다"고 간단하게 나타낼 수도 있음에 유의한다.
한편, 에러가 발생하기 쉬운 네트워크 채널로 비트스트림을 전송하는 경우, 복원된 픽쳐 내에 에러가 발생할 확률이 높다. 제한된 인트라 예측(Constrained Intra Prediction: CIP)는 인트라 예측 모드로 부호화되지 않은 블록에 속하는(covered) 주변 샘플들(neighbouring samples)을 참조하지 않고, 인트라 예측 모드로 부호화된 블록에 속하는 주변 샘플들만을 참조하여, 현재 블록(current block)에 대한 예측 블록을 생성하는 예측 방법이다. 여기서, 현재 블록은 부호화 대상 블록 또는 복호화 대상 블록을 의미한다. CIP 모드를 사용하는 경우, 참조하는 픽쳐가 손실되어 인터 예측 모드로 부호화된 블록이 정상적으로 복원되지 않아도, 인트라 예측 블록의 생성에는 영향이 없다. 따라서, 인터 예측 모드로 부호화된 블록을 정상적으로 복원할 수 없는 경우에도, 인트라 예측 모드로 부호화된 블록을 정상적으로 복호화할 수 있다.
하지만, 인-루프 필터링은 CIP 모드의 사용 여부에 관계없이 수행되므로, 압축된 영상 비트스트림 내에서 에러가 발생한 경우, 복원된 영상의 에러가 인-루프 필터링이 수행되는 과정에서 에러가 발생하지 않은 다른 영역으로 전파될 수 있다.
상술한 문제점을 해결하기 위해, 본 발명에서는 CIP 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반하여 인-루프 필터링의 수행 여부를 결정한다.
도 3은 본 발명의 일 실시예에 따른 인-루프 필터링 방법(부호화)을 나타낸 흐름도이다.
영상 부호화기는 CIP 모드의 사용 여부를 판별한다(S310).
부호화기와 복호화기는 CIP 모드의 사용 여부를 판별하기 위한 정보를 시그널링(signaling)할 수 있다. 예를 들어, CIP 모드의 사용 여부를 판별하기 위한 정보를 SPS(Sequence Parameter Set), PPS(Picture Parameter Set) 또는 슬라이스 헤더(slice header) 등을 통해 시그널링한다.
이때, CIP 모드의 사용 여부를 판별하기 위한 정보를 시그널링한다는 것은 부호화기(encoder)에서 CIP 모드의 사용 여부를 나타내는 플래그(flag)와 같은 지시자(indicator)를 비트스트림(bitstram)에 삽입하고, 복호화기(decoder)에서 파싱(parsing)하는 것을 의미한다. 지시자는 부호화기에서 산술 부호화(arithmetic coding) 등의 엔트로피 부호화 과정을 통해 비트스트림에 삽입되며, 복호화기에서 해당 엔트로피 부호화 과정에 상응하는 복호화 과정을 통해 추출될 수 있다.
예를 들어, 부호화 대상 시퀀스에서 CIP 모드를 사용하는지를 판별하기 위해, 표 1과 같이 constrained_intra_pred_flag 가 전송될 수 있다. 상기 플래그 값이 '0'인 경우, CIP 모드가 사용되지 않는 것으로 판별하고, 상기 플래그 값이 '1'인 경우, CIP 모드가 사용되는 것으로 판별할 수 있다.
Figure 112020047875603-pat00001
예를 들어, 부호화 대상 픽쳐에서 CIP 모드를 사용하는지를 판별하기 위해, 표 2와 같이 constrained_intra_pred_flag 가 전송될 수 있다. SPS를 통해 시그널링하는 경우와 마찬가지로, 플래그 값이 '0'인 경우, CIP 모드가 사용되지 않은 것으로 판별하고, 플래그 값이 '1'인 경우, CIP 모드가 사용되는 것으로 판별할 수 있다.
Figure 112020047875603-pat00002
한편, 에러가 발생하기 쉬운 네트워크 환경에서 사용되는 특수한 목적의 부호화기와 복호화기는 CIP 모드의 사용 여부를 판별하기 위한 정보를 별도로 시그널링(signaling)하지 않고, CIP 모드를 기본적으로 사용할 수도 있다.
도 4는 제한된 인트라 예측이 수행되는 일 예를 나타내는 개념도이다.
이하, 설명의 편의를 위해, 부호화 대상 블록(400)의 좌상단 샘플을 기준([0, 0])으로 우하단 방향으로 좌표 값이 증가하는 [x, y] 좌표를 설정한다. 또한, p[a, b]는 [a, b]의 위치를 가지는 샘플의 픽셀 값을 나타낸다. 예를 들어, 부호화 대상 블록(400)의 좌상단 샘플의 픽셀 값은 p[0, 0]으로 나타낼 수 있다.
부호화 대상 블록(400)의 크기가 8x8인 경우, 부호화 대상 블록(400)의 상단과 좌측에 위치하는 참조 샘플, 즉 상단 참조 샘플(p[-1...15, -1])과 좌측 참조 샘플(p[-1, 0...15])을 이용하여 부호화 대상 블록에 대한 예측 블록을 생성한다.
그러나, CIP 모드가 사용되는 경우, 상술한 바와 같이, 인트라 예측 모드로 부호화되지 않은 블록에 속하는 주변 샘플들은 인트라 예측에 사용될 수 없으므로(not available for intra prediction), 참조 샘플을 대체하는 과정(reference sample substitution process)이 필요하다. 예를 들어, 도 4에서 [x = -1, y = 4...11], [x = -1...5, y = -1], [x = 8...15, y = -1]의 위치를 가지는 샘플들은 제한된 인트라 예측에 사용될 수 있는 다른 샘플들로 대체해야 한다.
인트라 예측에 사용할 수 없는 주변 샘플을 대체하여, 참조 샘플을 구성하는 예는 다음과 같다.
예 1) 인트라 예측에 사용할 수 없는 주변 샘플들을 인트라 예측에 사용할 수 있는 주변 샘플들 중 하나의 값으로 대체한다.
예를 들어, 도 4의 경우에 있어서, [x = -1, y = 15]의 위치를 가지는 샘플이 인트라 예측에 사용할 수 없는 샘플이라면, [x = -1, y = 15]에서 [x = -1, y = -1]까지, 그 다음 [x = 0, y = -1]에서 [x = 15, y = -1]까지 순차적으로 검색한다. 인트라 예측에 사용할 수 있는 샘플이 발견되는 대로, 검색은 종료되며, 해당 샘플의 픽셀 값(p[x = -1, y = 15])에 검색된 샘플의 픽셀 값이 할당된다.
예를 들어, 도 4의 경우에 있어서, [x = -1, y = 4...11], [x = -1, y = -1]의 위치를 가지는 샘플이 인트라 예측에 사용할 수 없는 샘플이라면, 수학식 1 및 수학식 2와 같이, 해당 샘플의 픽셀 값(p[x, y])에 해당 샘플의 하단에 위치하는 샘플의 픽셀 값(p[x, y+1])이 할당된다.
Figure 112020047875603-pat00003
Figure 112020047875603-pat00004
예를 들어, 도 4의 경우에 있어서, [x = 0...5, y = -1], [x = 8...15, y = -1]의 위치를 가지는 샘플이 인트라 예측에 사용할 수 없는 샘플이라면, 수학식 3 및 수학식 4와 같이, 해당 샘플의 픽셀 값(p[x, y])에 해당 샘플의 좌측에 위치하는 샘플의 픽셀 값(p[x-1, y])이 할당된다.
Figure 112020047875603-pat00005
Figure 112020047875603-pat00006
예 2) 인트라 예측에 사용할 수 없는 참조 샘플(들)을 해당 참조 샘플(들)의 양측에 위치하는 인트라 예측에 사용할 수 있는 참조 샘플들의 평균값으로 대체한다.
예를 들어, 도 4의 경우에 있어서, 인터 예측 모드로 부호화된 블록에 속하는 주변 샘플들은 수학식 5 내지 수학식 7과 같이 대체된다.
Figure 112020047875603-pat00007
Figure 112020047875603-pat00008
Figure 112020047875603-pat00009
예 3) 인트라 예측에 사용할 수 없는 참조 샘플(들)을 해당 참조 샘플(들)의 양측에 위치하는 인트라 예측에 사용할 수 있는 참조 샘플들을 선형 보간(linear interpolation)한 값으로 대체한다.
예를 들어, 도 4의 경우에 있어서, 인터 예측 모드로 부호화된 블록에 속하는 주변 샘플들은 수학식 8 내지 수학식 10과 같이 대체된다.
Figure 112020047875603-pat00010
Figure 112020047875603-pat00011
Figure 112020047875603-pat00012
한편, 부호화 대상 블록이 인트라 예측 모드로 부호화되는 경우, 부호화 성능을 높이기 위해, 참조 샘플들 및 예측 샘플들(predicted samples)에 대해 필터링을 수행할 수 있다. 여기서, 예측 샘플은 부호화 대상 블록에 속하는 샘플의 예측 값을 의미한다.
예를 들어, 참조 샘플에 필터 계수가 [1 2 1]인 3-탭 저역통과 필터 또는 필터 계수가 [1 1]인 2-탭 평균 필터를 적용할 수 있다.
예를 들어, Intra_Vertical 예측 모드, Intra_Horizontal 예측 모드, Intra_DC 예측 모드와 같은 특정 인트라 모드에서, 부호화 대상 블록의 경계에 해당하는 샘플의 예측 값을 해당 샘플에 인접하는 참조 샘플에 기반하여 도출(derivation)할 수 있다.
그러나, CIP 모드가 사용되는 경우, 인트라 예측 모드로 부호화되지 않은 주변 샘플들이 인트라 예측 모드로 부호화된 주변 샘플들로 대체되므로, 참조 샘플들의 픽셀 값은 서로 유사하거나 동일할 확률이 높다. 따라서, CIP 모드가 사용되지 않는 경우와 달리, 제한된 인트라 예측 모드에서는 참조 샘플들에 대한 필터링을 수행하지 않는 것이 계산 복잡도의 감소와 부호화 성능의 향상 측면에서 바람직할 수 있다. 마찬가지로, 서로 유사하거나 동일한 픽셀 값을 가지는 참조 샘플들에 기반하여 도출되는 예측 샘플들의 픽셀 값도 서로 유사하거나 동일할 확률이 높으므로, 예측 샘플에 대한 필터링을 수행하지 않는 것이 바람직할 수 있다.
따라서, [1] CIP 모드의 사용 여부, [2] 참조 샘플이 속하는 블록의 이용 가능 여부, [3] 참조 샘플의 픽셀 값, [4] 참조 샘플이 속하는 블록의 부호화 파라미터 등에 기반하여 참조 샘플 및/또는 예측 샘플에 대한 필터링의 수행 여부를 적응적으로 결정할 수 있다.
예 1) CIP 모드의 사용 여부에 기반하여 참조 샘플 및/또는 예측 샘플에 대한 필터링의 수행 여부를 결정한다.
예를 들어, CIP 모드가 사용되는 환경에서 참조 샘플에 대해 필터를 적용하는 경우, 인터 슬라이스(P slice or B slice)에서는 참조 샘플에 대해 필터링을 수행하지 않을 수 있다.
예를 들어, CIP 모드가 사용되는 환경에서 예측 샘플에 대해 필터를 적용하는 경우, 인터 슬라이스(P slice or B slice)에서는 예측 샘플에 대해 필터링을 수행하지 않을 수 있다.
예 2) 참조 샘플이 속하는 블록의 이용 가능 여부에 기반하여 참조 샘플 및/ 또는 예측 샘플에 대한 필터링의 수행 여부를 적응적으로 결정한다.
예를 들어, 참조 샘플에 대해 필터를 적용하는 경우, 이용 가능하지 않은 블록에 속하는 샘플에 해당하여 인트라 예측에 사용할 수 있는 샘플로 대체되는 참조 샘플에 대해 필터링을 수행하지 않을 수 있다.
예를 들어, 예측 샘플에 대해 필터를 적용하는 경우, 이용 가능하지 않은 블록에 속하는 샘플에 해당하여 인트라 예측에 사용할 수 있는 샘플로 대체되는 참조 샘플에 기반하여 도출되는 예측 샘플에 대해 필터링을 수행하지 않을 수 있다.
예 3) 참조 샘플의 픽셀 값에 기반하여 참조 샘플 및/또는 예측 샘플에 대한 필터링의 수행 여부를 결정한다. 이때, 참조 샘플들의 픽셀 값들의 평균, 분산, 샘플 값이 서로 동일한지 등에 기반하여 측정되는 픽셀 값의 유사도 등을 이용할 수 있다.
예를 들어, 참조 샘플들에 대해 필터를 적용하는 경우, 픽셀 값이 서로 유사하거나 동일한 참조 샘플들에 대해 필터링을 수행하지 않을 수 있다.
예를 들어, 예측 샘플들에 대해 필터를 적용하는 경우, 픽셀 값이 서로 유사하거나 동일한 참조 샘플들에 기반하여 도출되는 예측 샘플들에 대해 필터링을 수행하지 않을 수 있다.
예 4) 참조 샘플이 속하는 블록의 부호화 파라미터에 기반하여 참조 샘플 및/또는 예측 샘플에 대한 필터링의 수행 여부를 결정한다. 이때, 인트라 예측 모드(intra prediction mode), MPM (Most Probable Mode) 플래그, 인터 예측 모드(inter prediction mode), 움직임 벡터(motion vector), 참조 픽쳐 인덱스(reference picture index), 양자화 매개변수(quantization parameter), 부호화 블록 플래그(coded block flag), 부호화 대상 블록이 인트라 예측 모드로 부호화되었는지 인터 예측 모드로 부호화되었는지를 나타내는 부호화 모드(coding mode) 등과 같은 부호화 파라미터들 중에서 적어도 하나 이상을 이용할 수 있다.
예를 들어, 참조 샘플에 대해 필터를 적용하는 경우, 인트라 예측 모드로 부호화되지 않은 블록에 속하는 샘플에 해당하여 인트라 예측 모드로 부호화된 블록에 속하는 샘플로 대체되는 참조 샘플에 대해 필터링을 수행하지 않을 수 있다.
예를 들어, 예측 샘플에 대해 필터를 적용하는 경우, 인트라 예측 모드로 부호화되지 않은 블록에 속하는 샘플에 해당하여 인트라 예측 모드로 부호화된 블록에 속하는 샘플로 대체되는 참조 샘플에 기반하여 도출되는 예측 샘플에 대해 필터링을 수행하지 않을 수 있다.
한편, Intra_Vertical 예측 모드, Intra_Horizontal 예측 모드, Intra_DC 예측 모드와 같은 특정 인트라 모드의 경우, 상술한 바와 같이, 예측 샘플들 중에서 부호화 대상 블록의 경계에 해당하는 예측 샘플들에 대해서만 필터를 적용할 수 있다. 상기 경우에도, [1] CIP 모드의 사용 여부, [2] 참조 샘플이 속하는 블록의 이용 가능 여부, [3] 참조 샘플의 픽셀 값, [4] 참조 샘플이 속하는 블록의 부호화 파라미터 등에 기반하여 예측 샘플들 중에서 부호화 대상 블록의 경계에 해당하는 예측 샘플들에 대한 필터링의 수행 여부를 적응적으로 결정할 수 있다. 다시 도 4를 참조하면, [0...5, 0], [0, 4...7]의 위치를 가지는 예측 샘플(410, 420)에 대해 필터링을 수행하지 않을 수 있다.
도 5는 제한된 인트라 예측 모드로 부호화된 블록에 대한 인-루프 필터링을 수행하는 방법을 나타낸 흐름도이다.
이하, 설명의 편의를 위해, 인-루프 필터링을 디블록킹 필터링의 예를 들어 설명하기로 한다. 그러나, 본 발명은 디블록킹 필터링에만 적용될 수 있는 것이 아니고, 비-디블록킹 필터링, SAO(Sample Adaptive Offset) 보상 또는 적응적 루프 필터(Adaptive Loop Filter: ALF)에도 적용될 수 있다.
부호화기는 필터링 대상 경계를 판별한다(S510). 일반적으로, 영상의 분할 단위의 경계가 필터링 대상 경계로 판단된다. 예를 들어 부호화 유닛(Coding Unit: CU)의 경계, 예측 유닛(Prediction Unit: PU)의 경계, 변환 유닛(Transform Unit: TU)의 경계가 필터링 대상 경계로 판단될 수 있다. 따라서, 필터링 대상 경계의 판별은 부호화 유닛(Coding Unit: CU), LCU(Largest Coding Unit), 슬라이스(slice) 단위 또는 픽쳐(picture) 단위로 수행된다.
부호화기는 필터링 경계 판별 단계(S510)를 통해 결정된 필터링 대상 경계의 주변 픽셀 값과 필터링 강도 중 적어도 하나 이상에 기반하여 필터링의 수행 여부 및 필터의 종류를 결정한다(S520). 예를 들어, 필터링 대상 경계의 주변 픽셀 값에 기반하여, 필터링 대상 경계가 변환(transform) 및 양자화(quantization)로 인한 블록킹 현상(blocking artifact)인지 아니면 픽쳐 내에 존재하는 실제 에지(edge)인지를 판별하고, 필터링의 수행 여부를 결정할 수 있다. 예를 들어, 필터 강도는 저역 통과 필터(low pass filter)의 입력 샘플 수를 나타내는 탭 크기(tap size), 저역 통과 필터의 계수(coefficient) 등을 나타낼 수 있다.
부호화기는 필터링 대상 경계 판별 단계(S510), 필터링의 수행 여부 및 필터의 종류 결정 단계(S520)를 통해 결정된 필터링 대상 경계 및 필터의 종류에 기반하여 필터링을 수행한다. 이때, 블록 사이의 경계의 부드러운 처리를 위해 필터링 대상 경계의 주변 픽셀 값의 변화량 등에 따라 저역 통과 필터를 사용하거나, 원래의 영상과의 왜곡을 최소화하기 위해 위너 필터(Wiener filter)를 적용할 수 있다. 또한, 필터링 대상 경계에 따라 1차원 필터 또는 2차원 이상의 다차원 필터를 적용할 수 있다. 예를 들어, 사각형, 원형, 직사각형 등의 필터의 모양(shape), 수평 대칭, 수직 대칭, 대각석 대칭 등의 필터 계수의 구조(structure)를 가지는 2차원 이상의 다차원 필터를 적용할 수 있다. 또한, 필터링의 수행 여부 및 필터의 종류 결정 단계(S520)를 통해 결정된 필터링 강도에 기반하여, 다양한 필터를 적용할 수 있다.
다시 도 3을 참조하면, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터를 판별한다(S320).
영상 부호화기는 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반하여 필터링의 수행 여부 및 필터의 종류를 결정할 수 있다. 이때, 인트라 예측 모드(intra prediction mode), 인터 예측 모드(inter prediction mode), 움직임 벡터(motion vector), 참조 픽쳐 인덱스(reference picture index), 양자화 매개변수(quantization parameter), 부호화 블록 플래그(coded block flag), 부호화 대상 블록이 인트라 예측 모드로 부호화되었는지 인터 예측 모드로 부호화되었는지를 나타내는 부호화 모드(coding mode) 등과 같은 부호화 파라미터들 중에서 적어도 하나 이상을 이용할 수 있다.
예를 들어, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 블록이 인트라 예측 모드로 부호화되었는지 또는 인터 예측 모드로 부호화되었는지를 판별할 수 있다. 이때, 어떤 블록이 인트라 예측 모드로 부호화되었다면, 해당 블록을 인트라 모드로 부호화되었다고 하거나, 인트라 부호화되었다고 할 수 있다. 마찬가지로, 어떤 블록이 인터 예측 모드로 부호화되었다면, 해당 블록을 인터 모드로 부호화되었다고 하거나 인터 부호화되었다고 할 수 있다.
예를 들어, 필터링 대상 경계의 양측에 위치하는 블록이 인터 예측 모드로 부호화된 경우, 영상 부호화기는 부호화 블록 플래그(Coded Block Flag: CBF), 스킵 모드(skip mode)와 같은 잔차 신호(residual signal)에 대한 변환 계수의 존재 여부를 판별하고, 이에 기반하여 디블록킹 필터의 처리 방법을 다르게 할 수 있다.
예를 들어, 필터링 대상 경계의 양측에 위치하는 블록이 PCM(Pulse Coded Modulation) 모드로 부호화된 경우, 영상 부호화기는 해당 블록을 인트라 예측 모드로 부호화되었다고 판별할 수 있다.
또한, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터와 함께 필터링 대상 경계의 주변 픽셀 값에 기반하여 필터링의 수행 여부 및 필터의 종류를 결정할 수 있다. 이때, 필터링 대상 경계의 주변 픽셀 값들의 차이(difference), 기울기(gradient), 분산(variance), 평균(average) 등을 이용할 수 있다.
영상 부호화기는 CIP 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반하여 인-루프 필터의 적용 여부를 결정한다.
CIP 모드가 사용되지 않는 경우, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 샘플에 대해 필터링을 수행한다(S330).
CIP 모드가 사용되고, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인트라 예측 모드로 부호화된 블록임을 나타내는 경우, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 필터링을 수행한다(S331).
도 6은 필터링 대상 경계의 양측에 위치하는 블록이 모두 인트라 예측 모드로 부호화된 일 예를 나타낸다. 양측 블록이 모두 인트라 부호화된 경우, 양측 블륵에 속하는 샘플들은 에러가 발생할 수 있는 인터 예측 모드로 부호화된 블록으로부터 아무런 영향을 받지 않는다. 따라서, constrained_intra_pred_flag가 1이고, 필터링 대상 경계의 양측에 위치하는 블록이 모두 인트라 예측 모드로 부호화된 경우, 필터링 대상 경계에 대해 디블록킹 필터링을 수행할 수 있다.
CIP 모드가 사용되고, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용하지 않을 수 있다(S333[1]).
도 7은 필터링 대상 경계의 양측에 위치하는 블록이 모두 인터 예측 모드로 부호화된 일 예를 나타낸다. 양측 블록이 모두 인터 부호화(머지 모드, 스킵 모드, PU_2Nx2N/PU_2NxN/PU_Nx2N/PU_NxN 모드)된 경우, 양측 블록에 속하는 샘플들에 에러가 발생할 수 있다. 따라서, constrained_intra_pred_flag가 1이고, 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터가 모두 인터 예측 모드인 경우, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 샘플에 대해 필터링을 수행하지 않을 수 있다.
또한, constrained_intra_pred_flag가 1이고, 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터가 모두 인터 예측 모드인 경우, 영상 부호화기는 필터링을 수행하지 않은 것과 같이 필터링 강도를 '0'으로 결정할 수도 있다. 수학식 11은 필터링 강도를 '0'으로 결정하는 일 예를 나타낸다.
Figure 112020047875603-pat00013
여기서, bS는 필터링 강도, filterDir는 1차원 필터의 적용 방향(수직/수평), xEk와 yEj는 필터링 대상 경계의 위치를 나타낸다.
또한, constrained_intra_pred_flag가 1이고, 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터가 모두 인터 예측 모드인 경우, 양측 블록에 속하는 샘플들에 에러가 발생할 수 있지만, 해당 샘플들에 디블록킹 필터링을 수행함으로써 발생되는 문제는 아니라고 볼 수도 있다. 따라서, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 샘플에 대해 필터링을 수행할 수도 있다(S333[2]).
CIP 모드가 사용되고, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 샘플들 중 인터 예측 모드로 부호화된 블록에 속하는 샘플들에 대해서만 필터링을 수행할 수 있다(S332[1]).
도 8 및 도 9는 필터링 대상 경계의 양측에 위치하는 블록이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 일 예를 나타낸다. 필터링 대상 경계의 양측에 인트라 예측 모드로 부호화된 블록과 인터 예측 모드로 부호화된 블록이 위치하는 경우, 인터 예측 모드로 부호화된 블록에 속하는 복원된 샘플에 발생한 에러가 인트라 예측 모드로 부호화된 블록에 속하는 복원된 샘플에 영향을 줄 수 있다. 따라서. 필터링 대상 경계 양측 샘플들 중 인트라 예측 모드로 부호화된 블록에 속하는 샘플들에 대해 필터링을 수행하지 않고, 필터링 대상 경계 양측 샘플들 중 인터 예측 모드로 부호화된 블록에 속하는 샘플들에 대해서만 필터링을 수행함으로써, 에러의 전파를 방지할 수 있다.
필터링 대상 경계 양측 샘플들 중 인터 예측 모드로 부호화된 블록에 속하는 샘플들에 대해서만 필터링을 수행하는 경우, 다음과 같은 디블록킹 필터링 과정이 수행된다.
<휘도(luma) 샘플에 대한 디블록킹 필터링 수행 과정 1>
- 입력
(1) 샘플 값: pi, qi (i = 0...3)
(2) p1과 q1 각각의 샘플들에 대한 필터 적용 여부: dEp1, dEq1
(3) 필터를 적용하기 위한 임계치: tc
- 출력
(1) 필터링된 샘플 수: nDp, nDq
(2) 필터링된 샘플 값: pi', qj'(i = 0...nDp -1, j = 0...nDq - 1)
- [1] pi가 I_PCM 블록의 샘플이 아니거나, pcm_loop_filter_disable_flag가 0이고, [2] pi가 인터 예측 모드로 부호화된 블록에 속하고, [3] qi가 인트라 예측 모드로 부호화된 블록에 속하고, [4] dE가 2인 경우, nDp를 3으로 하고 pi에 다음과 같은 강한 필터를 적용한다.
Figure 112020047875603-pat00014
Figure 112020047875603-pat00015
Figure 112020047875603-pat00016
여기서, Clip3(a, b, c)는 a와 b의 범위 내로 c를 클립핑(clipping)하는 것을 나타낸다.
- [1] pi가 I_PCM 블록의 샘플이 아니거나, pcm_loop_filter_disable_flag가 0이고, [2] pi가 인터 예측 모드로 부호화된 블록에 속하고, [3] qi가 인트라 예측 모드로 부호화된 블록에 속하고, [4] dE가 2가 아닌 경우, nDp를 1로 하고 pi에 약한 필터를 적용한다.
Figure 112020047875603-pat00017
abs(Δ)가 tc*10보다 작으면, 다음과 같은 단계가 적용된다.
(1) p0'가 다음과 같이 구해진다.
Figure 112020047875603-pat00018
Figure 112020047875603-pat00019
여기서, Clip1Y(x)는 수학식 18과 같이 정의된다.
Figure 112020047875603-pat00020
여기서, BitDepthY는 휘도 성분의 비트 깊이(bit depth)를 나타낸다.
(2) dEp1이 1이면, pi'가 다음과 같이 구해진다.
Figure 112020047875603-pat00021
Figure 112020047875603-pat00022
(3) nDp 는 dEp1+1이 된다.
- [1] qi가 I_PCM 블록의 샘플이 아니거나, pcm_loop_filter_disable_flag가 0이고, [2] qi가 인터 예측 모드로 부호화된 블록에 속하고, [3] pi가 인트라 예측 모드로 부호화된 블록에 속하고, [4] dE가 2인 경우, nDq를 3으로 하고 qi에 다음과 같은 강한 필터를 적용한다.
Figure 112020047875603-pat00023
Figure 112020047875603-pat00024
Figure 112020047875603-pat00025
여기서, Clip3(a, b, c)는 a와 b의 범위 내로 c를 클립핑(clipping)하는 것을 나타낸다.
- [1] qi가 I_PCM 블록의 샘플이 아니거나, pcm_loop_filter_disable_flag가 0이고, [2] qi가 인터 예측 모드로 부호화된 블록에 속하고, [3] pi가 인트라 예측 모드로 부호화된 블록에 속하고, [4] dE가 2가 아닌 경우, nDq를 1로 하고 qi에 약한 필터를 적용한다.
Figure 112020047875603-pat00026
abs(Δ)가 tc*10보다 작으면, 다음과 같은 단계가 적용된다.
(1) q0'가 다음과 같이 구해진다.
Figure 112020047875603-pat00027
Figure 112020047875603-pat00028
여기서, Clip1Y(x)는 수학식 27과 같이 정의된다.
Figure 112020047875603-pat00029
여기서, BitDepthY는 휘도 성분의 비트 깊이(bit depth)를 나타낸다.
(2) dEq1이 1이면, qi'가 다음과 같이 구해진다.
Figure 112020047875603-pat00030
Figure 112020047875603-pat00031
(3) nDq 는 dEq1+1이 된다.
한편, 휘도(luma) 샘플에 대해 디블록킹 필터링을 다음과 같이 수행할 수도 있다.
<휘도(luma) 샘플에 대한 디블록킹 필터링 수행 과정 2>
- 입력
(1) 샘플 값: pi, qi (i = 0...3)
(2) p1과 q1 각각의 샘플들에 대한 필터 적용 여부: dEp1, dEq1
(3) 필터를 적용하기 위한 임계치: tc
*- 출력
(1) 필터링된 샘플 수: nDp, nDq
(2) 필터링된 샘플 값: pi', qj'(i = 0...nDp -1, j = 0...nDq - 1)
- dE가 2이면, nDp 와 nDq를 3으로 하고, 강한 필터를 적용한다.
Figure 112020047875603-pat00032
Figure 112020047875603-pat00033
Figure 112020047875603-pat00034
Figure 112020047875603-pat00035
Figure 112020047875603-pat00036
Figure 112020047875603-pat00037
여기서, Clip3(a, b, c)는 a와 b의 범위 내로 c를 클립핑(clipping)하는 것을 나타낸다.
- dE가 2가 아니면, nDp 와 nDq를 1로 하고 약한 필터를 적용한다.
Figure 112020047875603-pat00038
abs(Δ)가 tc*10보다 작으면, 다음과 같은 단계가 적용된다.
(1) p0' 와 q0'가 다음과 같이 구해진다.
Figure 112020047875603-pat00039
Figure 112020047875603-pat00040
Figure 112020047875603-pat00041
여기서, Clip1Y(x)는 수학식 40과 같이 정의된다.
Figure 112020047875603-pat00042
여기서, BitDepthY는 휘도 성분의 비트 깊이(bit depth)를 나타낸다.
(2) dEp1이 1이면, pi'가 다음과 같이 구해진다.
Figure 112020047875603-pat00043
Figure 112020047875603-pat00044
(3) dEq1이 1이면, qi'가 다음과 같이 구해진다.
Figure 112020047875603-pat00045
Figure 112020047875603-pat00046
(4) nDp는 dEp1+1이 되고, nDq는 dEq1+1이 된다.
- 다음의 두 조건 중 적어도 하나 이상을 만족하는 경우, pi'(i = 0...nDp-1)는 입력 샘플 pi로 변경된다.
(1) pi가 I_PCM 블록의 샘플이고, pcm_loop_filter_disable_flag가 1이다.
(2) pi는 인트라 예측 모드로 부호화된 블록에 속하고, qi는 인터 예측 모드로 부호화된 블록에 속한다.
- 다음의 두 조건 중 적어도 하나 이상을 만족하는 경우, qj' (j = 0...nDq-1) 는 입력 샘플 qj로 변경된다.
(1) qj가 I_PCM 블록의 샘플이고, pcm_loop_filter_disable_flag가 1이다.
(2) qj는 인트라 예측 모드로 부호화된 블록에 속하고, pj는 인터 예측 모드로 부호화된 블록에 속한다.
한편, 색차(chroma) 샘플에 대해 디블록킹 필터링을 다음과 같이 수행할 수 있다.
<색차(chroma) 샘플에 대한 디블록킹 필터링 수행 과정 1>
- 입력
(1) 샘플 값: pi, qi (i = 0, 1)
(2) 필터를 적용하기 위한 임계치: tc
- 출력
(1) 필터링된 샘플 값: p0', q0'
- [1] pi가 I_PCM 블록의 샘플이 아니거나, pcm_loop_filter_disable_flag가 0이고, [2] pi가 인터 예측 모드로 부호화된 블록에 속하고, [3] qi가 인트라 예측 모드로 부호화된 블록에 속하는 경우, 다음과 같은 필터를 적용한다.
Figure 112020047875603-pat00047
Figure 112020047875603-pat00048
- [1] qi가 I_PCM 블록의 샘플이 아니거나, pcm_loop_filter_disable_flag가 0이고, [2] qi가 인터 예측 모드로 부호화된 블록에 속하고, [3] pi가 인트라 예측 모드로 부호화된 블록에 속하는 경우, 다음과 같은 필터를 적용한다.
Figure 112020047875603-pat00049
Figure 112020047875603-pat00050
한편, 색차(chroma) 샘플에 대해 디블록킹 필터링을 다음과 같이 수행할 수도 있다.
<색차(chroma) 샘플에 대한 디블록킹 필터링 수행 과정 2>
- 입력
(1) 샘플 값: pi, qi (i = 0, 1)
(2) 필터를 적용하기 위한 임계치: tc
- 출력
(1) 필터링된 샘플 값: p0', q0'
- 다음의 필터를 적용한다.
Figure 112020047875603-pat00051
Figure 112020047875603-pat00052
Figure 112020047875603-pat00053
- 다음의 두 조건 중 적어도 하나 이상을 만족하는 경우, p0'는 입력 샘플 p0로 변경된다.
(1) p0가 I_PCM 블록의 샘플이고, pcm_loop_filter_disable_flag가 1이다.
(2) p0는 인트라 예측 모드로 부호화된 블록에 속하고, q0는 인터 예측 모드로 부호화된 블록에 속한다.
- 다음의 두 조건 중 적어도 하나 이상을 만족하는 경우, q0'는 입력 샘플 q0로 변경된다.
(1) q0가 I_PCM 블록의 샘플이고, pcm_loop_filter_disable_flag가 1이다.
(2) q0는 인트라 예측 모드로 부호화된 블록에 속하고, p0는 인터 예측 모드로 부호화된 블록에 속한다.
한편, CIP 모드가 사용되고, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 샘플에 대해 필터링을 수행하지 않을 수 있다(S332[2]).
예를 들어, 필터링 대상 경계의 양측에 위치하는 블록들 중 하나의 블록이 인트라 예측 모드(PU_2Nx2N 또는 PU_NxN)로 부호화된 경우, 필터링 강도를 결정하지 않고, 필터링을 수행하지 않을 수 있다.
또한, CIP 모드가 사용되고, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 영상 부호화기는 필터링을 수행하지 않은 것과 같이 필터링 강도를 '0'으로 결정할 수도 있다. 수학식 52는 필터링 강도를 '0'으로 결정하는 일 예를 나타낸다.
Figure 112020047875603-pat00054
여기서, bS는 필터링 강도, filterDir는 1차원 필터의 적용 방향(수직/수평), xEk와 yEj는 필터링 대상 경계의 위치를 나타낸다.
한편, 필터링 대상 블록이 I_PCM 블록이고, pcm_loop_filter_disable_flag가 '1'이면, 디블록킹 필터링을 수행하지 않는다. 여기서, I_PCM 블록은 필터링 대상 블록이 압축되지 않은 원본 샘플을 이용하는 PCM 모드로 부호화된 블록임을 의미하고, pcm_loop_filter_disable_flag는 I_PCM 블록의 복원된 픽셀에 루프 필터 과정이 수행되는지를 나타내기 위한 플래그이다. 따라서, 필터링 대상 블록이 I_PCM 블록인 경우도 포함하여, 필터링의 수행 여부를 결정할 수 있다.
도 10은 CIP 모드 및 PCM 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반한 디블록킹 필터링을 수행하는 방법을 나타낸 흐름도이다.
CIP 모드가 사용되는 경우, 즉 constrained_intra_pred_flag가 '1'인 경우, 필터링 대상 경계의 양측에 위치하는 블록 P와 Q의 부호화 모드를 판별한다.
필터링 대상 경계의 양측에 위치하는 블록이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 경우, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 샘플들 중 인트라 예측 모드로 부호화된 블록에 속하는 샘플들에 대해 필터링을 수행하지 않는다.
필터링 대상 경계의 양측에 위치하는 블록이 모두 인트라 예측 모드로 부호화된 경우, 또는 필터링 대상 경계의 양측에 위치하는 블록이 모두 인터 예측 모드로 부호화된 경우, 영상 부호화기는 pcm_loop_filter_disable_flag를 판별한다.
pcm_loop_filter_disable_flag가 '1'인 경우, 필터링 대상 경계의 양측에 위치하는 블록 P와 Q가 각각 I_PCM 블록인지 판별하고, I_PCM 블록인 블록에 대해 필러링을 수행하지 않는다.
CIP 모드가 사용되지 않는 경우, 즉 constrained_intra_pred_flag가 '0'인 경우, 영상 부호화기는 pcm_loop_filter_disable_flag를 판별한다.
pcm_loop_filter_disable_flag가 '1'인 경우, 필터링 대상 경계의 양측에 위치하는 블록 P와 Q가 각각 I_PCM 블록인지 판별하고, I_PCM 블록인 블록에 대해 필러링을 수행하지 않는다.
도 11은 본 발명의 일 실시예에 따른 인-루프 필터링 방법(복호화)을 나타낸 흐름도이다.
복호화기는 부호화기와 동일한 방법으로 인-루프 필터링의 수행 여부를 결정할 수 있다. 즉, 영상 복호화기는 CIP 모드의 사용 여부를 판별한다(S1110).
CIP 모드가 사용되는 경우, 영상 복호화기는 복호화 대상 블록의 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들을 판별한다(S1120).
영상 복호화기는 CIP 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록의 복호화 파라미터에 기반하여 인-루프 필터의 적용 여부를 결정한다.
예를 들어, CIP 모드가 사용되지 않는 경우, 영상 복호화기는 필터링 대상 경계의 양측에 위치하는 샘플에 대해 필터링을 수행한다(S1130).
예를 들어, CIP 모드가 사용되고 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인트라 예측 모드로 복호화된 블록임을 나타내는 경우, 영상 복호화기는 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 필터링을 수행한다(S1131).
예를 들어, CIP 모드가 사용되고 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 영상 복호화기는 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 디블록킹 필터를 적용하지 않을 수 있다(S1133[1]).
예를 들어, CIP 모드가 사용되고 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 영상 복호화기는 필터링 대상 경계의 양측에 위치하는 샘플에 대해 필터링을 수행할 수도 있다(S1133[2]).
예를 들어, CIP 모드가 사용되고 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 영상 복호화기는 필터링 대상 경계의 양측에 위치하는 샘플들 중 인터 예측 모드로 복호화된 블록에 속하는 샘플들에 대해서만 필터링을 수행할 수 있다(S1132[1]).
예를 들어, CIP 모드가 사용되고 필터링 대상 경계의 양측에 위치하는 블록들의 복호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 복호화된 블록임을 나타내는 경우, 영상 복호화기는 필터링 대상 경계의 양측에 위치하는 샘플에 대해 필터링을 수행하지 않을 수 있다(S1132[2]).
도 12는 본 발명의 일 실시예에 따른 영상 부호화 방법을 나타낸 흐름도이다.
영상 부호화기는 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링한다(S1210). 여기서, 제한된 인-루프 필터는 CIP 모드의 사용 여부와 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반하여 적용되는 인-루프 필터를 의미하고, 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링한다는 것은 부호화기(encoder)에서 제한된 인-루프 필터의 사용 여부를 나타내는 플래그(flag)와 같은 지시자(indicator)를 비트스트림(bitstram)에 삽입하고, 복호화기(decoder)에서 파싱(parsing)하는 것을 의미한다.
제한된 인-루프 필터가 사용되는 경우, [1] 필터링 대상 경계의 양측에 위치하는 샘플들 중 인터 예측 모드로 부호화된 블록에 속하는 샘플들에 대해서만 필터링을 수행하거나, [2] 필터링 대상 경계의 양측에 위치하는 샘플들에 필터링을 수행하지 않거나, [3] 필터링 대상 경계의 양측에 위치하는 샘플들에 필터링을 수행할 수 있다.
예를 들어, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 각각 인트라 예측 모드와 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들 중 인터 예측 모드로 부호화된 블록에 속하는 샘플들에 대해서만 필터링을 수행할 수 있다.
예를 들어, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인터 예측 모드로 부호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 필터링을 수행하지 않을 수 있다.
예를 들어, 필터링 대상 경계의 양측에 위치하는 블록들의 부호화 파라미터들이 필터링 대상 경계의 양측에 위치하는 블록들이 모두 인트라 예측 모드로 부호화된 블록임을 나타내는 경우, 필터링 대상 경계의 양측에 위치하는 샘플들에 대해 필터링을 수행할 수 있다.
부호화기는 상기 예들 중 적어도 하나 이상이 적용됨을 나타내는 정보, 즉 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링할 수 있다. 이때, 시그널링은 부호화 유닛(Coding Unit: CU), 예측 유닛(Prediction Unit: PU), 변환 유닛(Transform Unit: TU), LCU(Largest Coding Unit), 슬라이스(slice) 단위 또는 픽쳐(picture) 단위로 수행될 수 있다.
예를 들어, 제한된 인-루프 필터의 사용 여부를 나타내는 정보를 PPS를 통해 시그널링하는 경우, 표 3과 같이 constrained_in_loop_filter_flag를 전송할 수 있다.
Figure 112020047875603-pat00055
이때, constrained_in_loop_filter_flag가 '1'인 경우, 제한된 인-루프 필터를 사용하고, constrained_in_loop_filter_flag가 '0'인 경우, 제한된 인-루프 필터를 사용하지 않을 수 있다.
한편, 영상 부호화기는 CIP 모드의 사용 여부에 기반하여 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링할 것인지 결정할 수 있다.
예를 들어, CIP 모드가 사용되는 경우(constrained_intra_pred_flag = 1), 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링하고, CIP 모드가 사용되지 않는 경우(constrained_intra_pred_flag = 0), 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링하지 않을 수 있다.
또한, 영상 부호화기는 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반하여 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링할 것인지 결정할 수 있다.
예를 들어, 필터링 대상 경계의 양측에 위치하는 블록들 중에서 하나 이상의 블록이 인터 예측 모드로 부호화된 경우, 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링할 수 있다.
표 4는 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반하여 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 시그널링할 것인지 결정하는 일 예를 나타낸다.
Figure 112020047875603-pat00056
또한, 영상 부호화기는 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 기본적으로 시그널링할 수도 있다.
영상 부호화기는 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터를 판별한다(S1220). 이때, 영상 부호화기는 도 3의 "필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터를 판별하는 단계(S320)"와 같은 방법으로 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터를 판별할 수 있다.
영상 부호화기는 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보 및 필터링 대상 경계의 양측에 위치하는 블록의 부호화 파라미터에 기반하여 인-루프 필터의 적용 여부를 결정한다(S1230).
도 13은 본 발명의 일 실시예에 따른 영상 복호화 방법을 나타낸 흐름도이다.
복호화기는 부호화기와 상응하는 방법으로 제한된 인-루프 필터의 사용 여부를 결정할 수 있다. 즉, 영상 복호화기는 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보를 파싱한다(S1310).
영상 복호화기는 필터링 대상 경계의 양측에 위치하는 블록의 복호화 파라미터를 판별한다(S1320).
영상 복호화기는 제한된 인-루프 필터의 사용 여부를 판별하기 위한 정보 및 필터링 대상 경계의 양측에 위치하는 블록의 복호화 파라미터에 기반하여 인-루프 필터의 적용 여부를 결정한다(S1330).
상술한 단계들의 순서에 한정되는 것은 아니며, 일부의 단계는 다른 단계와, 다른 순서 또는 동시에 발생할 수 있다. 또한, 본 발명이 속하는 기술 분야의 통상의 지식을 가진자라면 순서도에 나타낸 단계들은 배타적이지 않으며, 다른 단계가 포함되거나, 일부의 단계가 삭제될 수 있음을 이해할 수 있을 것이다.
또한, 상술한 실시예들은 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위해, 모든 가능한 조합을 기술할 수는 없지만, 본 발명이 속하는 기술 분야의 통상의 지식을 가진자라면 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.

Claims (4)

  1. 현재 블록의 주변 샘플들로부터 참조 샘플들을 구성하는 단계; 및
    상기 참조 샘플들에 기초하여 상기 현재 블록을 예측하여 예측 블록을 생성하는 단계를 포함하고,
    상기 참조 샘플들을 구성하는 단계는,
    상기 참조 샘플들에 포함된 적어도 하나의 대체 대상 참조 샘플의 양측에 위치하는 두 개의 참조 샘플들을 이용하여 대체 샘플값을 유도하는 단계; 및
    상기 대체 대상 참조 샘플의 샘플값을 상기 대체 샘플값으로 대체하는 단계를 포함하고,
    상기 대체 대상 참조 샘플이 상기 현재 블록의 상단에 위치한 샘플인 경우,
    상기 두 개의 참조 샘플들의 y좌표는 상기 대체 대상 참조 샘플의 y좌표와 동일하고,
    상기 두 개의 참조 샘플들 중 하나는 상기 대체 대상 참조 샘플의 x좌표보다 작은 x좌표를 갖는 고정 위치의 샘플이고, 상기 두 개의 참조 샘플들 중 나머지 하나는 상기 대체 대상 참조 샘플의 x좌표보다 큰 x좌표를 갖는 고정 위치의 샘플인 영상 복호화 방법.
  2. 현재 블록의 주변 샘플들로부터 참조 샘플들을 구성하는 단계; 및
    상기 참조 샘플들에 기초하여 상기 현재 블록을 예측하여 예측 블록을 생성하는 단계를 포함하고,
    상기 참조 샘플들을 구성하는 단계는,
    상기 참조 샘플들에 포함된 적어도 하나의 대체 대상 참조 샘플의 양측에 위치하는 두 개의 참조 샘플들을 이용하여 대체 샘플값을 유도하는 단계; 및
    상기 대체 대상 참조 샘플의 샘플값을 상기 대체 샘플값으로 대체하는 단계를 포함하고,
    상기 대체 대상 참조 샘플이 상기 현재 블록의 상단에 위치한 샘플인 경우,
    상기 두 개의 참조 샘플들의 y좌표는 상기 대체 대상 참조 샘플의 y좌표와 동일하고,
    상기 두 개의 참조 샘플들 중 하나는 상기 대체 대상 참조 샘플의 x좌표보다 작은 x좌표를 갖는 고정 위치의 샘플이고, 상기 두 개의 참조 샘플들 중 나머지 하나는 상기 대체 대상 참조 샘플의 x좌표보다 큰 x좌표를 갖는 고정 위치의 샘플인 영상 부호화 방법.
  3. 영상 부호화 방법에 의해 생성된 비트스트림을 저장한 컴퓨터 판독가능한 기록매체로서,
    상기 영상 부호화 방법은,
    현재 블록의 주변 샘플들로부터 참조 샘플들을 구성하는 단계; 및
    상기 참조 샘플들에 기초하여 상기 현재 블록을 예측하여 예측 블록을 생성하는 단계를 포함하고,
    상기 참조 샘플들을 구성하는 단계는,
    상기 참조 샘플들에 포함된 적어도 하나의 대체 대상 참조 샘플의 양측에 위치하는 두 개의 참조 샘플들을 이용하여 대체 샘플값을 유도하는 단계; 및
    상기 대체 대상 참조 샘플의 샘플값을 상기 대체 샘플값으로 대체하는 단계를 포함하고,
    상기 대체 대상 참조 샘플이 상기 현재 블록의 상단에 위치한 샘플인 경우,
    상기 두 개의 참조 샘플들의 y좌표는 상기 대체 대상 참조 샘플의 y좌표와 동일하고,
    상기 두 개의 참조 샘플들 중 하나는 상기 대체 대상 참조 샘플의 x좌표보다 작은 x좌표를 갖는 고정 위치의 샘플이고, 상기 두 개의 참조 샘플들 중 나머지 하나는 상기 대체 대상 참조 샘플의 x좌표보다 큰 x좌표를 갖는 고정 위치의 샘플인 컴퓨터 판독가능한 기록매체.
  4. 삭제
KR1020200056585A 2011-05-04 2020-05-12 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법 KR102206225B1 (ko)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
KR20110042694 2011-05-04
KR1020110042694 2011-05-04
KR20110052610 2011-06-01
KR1020110052610 2011-06-01
KR1020110065713 2011-07-01
KR20110065713 2011-07-01
KR1020120039422 2012-04-16
KR1020120039422A KR20120125160A (ko) 2011-05-04 2012-04-16 에러에 강인한 필터링을 이용한 영상 부호화/복호화 방법 및 그 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190064413A Division KR102112264B1 (ko) 2011-05-04 2019-05-31 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210006477A Division KR20210008558A (ko) 2011-05-04 2021-01-18 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법

Publications (2)

Publication Number Publication Date
KR20200053462A KR20200053462A (ko) 2020-05-18
KR102206225B1 true KR102206225B1 (ko) 2021-01-22

Family

ID=66846855

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020190064413A KR102112264B1 (ko) 2011-05-04 2019-05-31 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법
KR1020190123933A KR102115822B1 (ko) 2011-05-04 2019-10-07 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법
KR1020200056585A KR102206225B1 (ko) 2011-05-04 2020-05-12 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법
KR1020210006477A KR20210008558A (ko) 2011-05-04 2021-01-18 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법
KR1020220115953A KR20220130067A (ko) 2011-05-04 2022-09-14 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020190064413A KR102112264B1 (ko) 2011-05-04 2019-05-31 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법
KR1020190123933A KR102115822B1 (ko) 2011-05-04 2019-10-07 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020210006477A KR20210008558A (ko) 2011-05-04 2021-01-18 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법
KR1020220115953A KR20220130067A (ko) 2011-05-04 2022-09-14 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법

Country Status (1)

Country Link
KR (5) KR102112264B1 (ko)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Yunfei Zheng "CE13: Mode Dependent Hybrid Intra Smoothing", JCTVC-D282, 21 January 2011.*
정제창 역, H.264/AVC 비디오 압축 표준, 홍릉과학출판사, 2007.4.5 발행*

Also Published As

Publication number Publication date
KR20190116228A (ko) 2019-10-14
KR20190065213A (ko) 2019-06-11
KR20210008558A (ko) 2021-01-22
KR102112264B1 (ko) 2020-05-18
KR20200053462A (ko) 2020-05-18
KR102115822B1 (ko) 2020-05-27
KR20220130067A (ko) 2022-09-26

Similar Documents

Publication Publication Date Title
KR102229157B1 (ko) 영상 정보 부호화 및 복호화 방법
KR102014177B1 (ko) 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법
KR101920105B1 (ko) 영상의 재구성된 샘플 세트에 대한 보상 오프셋들을 제공하는 방법
EP2781095B1 (en) Adaptive overlapped block motion compensation
AU2012261975B2 (en) Memory efficient context modeling
US9161046B2 (en) Determining quantization parameters for deblocking filtering for video coding
KR102182441B1 (ko) 비디오 코딩에서 hevc 확장들을 위한 다중 계층들의 저복잡도 지원
KR20160110961A (ko) 비대칭 구획을 갖는 인트라 블록 카피 예측 및 인코더측 검색 패턴, 검색 범위 및 구획화 접근법
WO2015138714A1 (en) Deblock filtering using pixel distance
AU2012328924A1 (en) Determining boundary strength values for deblocking filtering for video coding
US20130170562A1 (en) Deblocking decision functions for video coding
EP2837182A1 (en) Beta offset control for deblocking filters in video coding
KR102294016B1 (ko) 변환생략을 참조하는 디블록킹 필터링을 이용한 영상의 부호화/복호화 방법 및 이를 이용하는 장치
EP2936819B1 (en) Deblocking filter with reduced line buffer
KR102206225B1 (ko) 에러에 강인한 인-루프 필터를 이용하는 영상 부호화/복호화 방법과 그에 관한 시그널링 방법
KR101475286B1 (ko) 인트라 예측 방법 및 장치, 그리고 영상 처리 장치
KR102410326B1 (ko) 영상 부호화/복호화 방법 및 장치
KR20130070215A (ko) 적응적 깊이 정보 선택 및 수행에 대한 디블록킹 필터링 방법 및 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant