KR20200083357A - 화면 간 예측 부호화 및 복호화 방법 및 장치 - Google Patents

화면 간 예측 부호화 및 복호화 방법 및 장치 Download PDF

Info

Publication number
KR20200083357A
KR20200083357A KR1020190178642A KR20190178642A KR20200083357A KR 20200083357 A KR20200083357 A KR 20200083357A KR 1020190178642 A KR1020190178642 A KR 1020190178642A KR 20190178642 A KR20190178642 A KR 20190178642A KR 20200083357 A KR20200083357 A KR 20200083357A
Authority
KR
South Korea
Prior art keywords
block
prediction
inter
mode
current block
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
KR1020190178642A
Other languages
English (en)
Inventor
김재곤
도지훈
박도현
윤용욱
Original Assignee
인텔렉추얼디스커버리 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인텔렉추얼디스커버리 주식회사 filed Critical 인텔렉추얼디스커버리 주식회사
Publication of KR20200083357A publication Critical patent/KR20200083357A/ko
Pending legal-status Critical Current

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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • 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/109Selection of coding mode or of prediction mode among a plurality of temporal 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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

본 발명에 따른 부호화/복호화 방법 및 장치는, 복수의 화면 간 예측 모드들 중 적어도 하나를 현재 블록의 화면 간 예측 모드로 결정하고, 상기 결정된 화면 간 예측 모드를 기초로 화면 간 예측 후보 리스트를 구성하며, 상기 화면 간 예측 후보 리스트 내 어느 하나 예측 후보를 기초로 움직임 보상을 수행하여, 상기 현재 블록의 제1 예측 블록을 생성하고, 소정의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록을 보정할 수 있다.

Description

화면 간 예측 부호화 및 복호화 방법 및 장치{METHOD AND APPARATUS FOR INTER PREDICTIVE VIDEO ENCODING AND DECODING}
본 발명은 영상 부호화/복호화 방법 및 장치에 관한 것이다.
비디오 영상은 시공간적 중복성 및 시점 간 중복성을 제거하여 압축부호화되며, 이는 통신 회선을 통해 전송되거나 저장 매체에 적합한 형태로 저장될 수 있다.
고해상도 비디오에 대한 시장의 수요가 증가하고 있으며, 이에 따라 고해상도 영상을 효율적으로 압축할 수 있는 기술이 필요하다. 이러한 시장의 요구에 따라 ISO/IEC의 MPEG (Moving Picture Expert Group)과 ITU-T의 VCEG (Video Coding Expert Group)이 공동으로 JVET을 결성하여, VVC (Versatile Video Coding) 비디오 압축 표준에 대한 연구 및 개발을 활발히 진행해 오고 있다.
동영상 압축은 크게 화면 내 예측 (또는 화면 내 예측), 화면 간 예측(또는 인터 예측), 변환, 양자화, 엔트로피(Entropy coding) 부호화, 인루프 필터(In-loop filter)로 구성된다. 한편, 고해상도 영상에 대한 수요가 증가함과 함께, 새로운 영상 서비스로서 입체 영상 컨텐츠에 대한 수요도 함께 증가하고 있다. 고해상도 및 초고해상도의 입체 영상 콘텐츠를 효과적으로 제공하기 위한 비디오 압축 기술에 대하여 논의가 진행되고 있다.
본 발명은 비디오 신호의 코딩 효율을 향상시키고자 함에 있다.
본 발명에 따른 복호화 방법 및 장치는, 복수의 화면 간 예측 모드들 중 적어도 하나를 현재 블록의 화면 간 예측 모드로 결정하고, 상기 결정된 화면 간 예측 모드를 기초로 화면 간 예측 후보 리스트를 구성하며, 상기 화면 간 예측 후보 리스트 내 어느 하나 예측 후보를 기초로 움직임 보상을 수행하여, 상기 현재 블록의 제1 예측 블록을 생성하고, 소정의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록을 보정할 수 있다.
본 발명에 따른 복호화 방법 및 장치에 있어서, 상기 보정하는 단계는, 상기 화면 내 예측 모드를 기반으로 상기 현재 블록의 제2 예측 블록을 생성하는 단계; 및 상기 제1 예측 블록과 상기 제2 예측 블록을 조합하는 단계를 포함할 수 있다.
본 발명에 따른 복호화 방법 및 장치에 있어서, 상기 화면 내 예측 모드는, 복호화 장치에 기-약속된 고정된 모드일 수 있다.
본 발명에 따른 복호화 방법 및 장치에 있어서, 상기 기-약속된 고정된 모드는, Planar 모드 또는 DC 모드 중 어느 하나일 수 있다.
본 발명에 따른 복호화 방법 및 장치에 있어서, 상기 화면 간 예측 후보 리스트는, 공간적 머지 후보 또는 시간적 머지 후보 중 적어도 하나를 포함할 수 있다.
본 발명에 따른 복호화 방법 및 장치에 있어서, 상기 화면 간 예측 후보 리스트는, 결합 머지 후보를 더 포함하고, 상기 결합 머지 후보는, 상기 화면 간 예측 후보 리스트에 속한 적어도 2개의 머지 후보의 평균을 통해 유도될 수 있다.
본 발명에 따른 복호화 방법 및 장치에 있어서, 상기 제1 예측 블록의 보정은, 화면 내 예측 기반의 보정 여부를 지시하는 플래그에 따라 선택적으로 수행될 수 있다.
본 발명에 따른 복호화 방법 및 장치에 있어서, 상기 플래그는, 상기 현재 블록이 속한 슬라이스의 타입, 상기 현재 블록의 화면 간 예측 모드 또는 상기 현재 블록의 크기 중 적어도 하나를 고려하여 시그날링되거나 유도될 수 있다.
본 발명에 따른 부호화 방법 및 장치는, 복수의 화면 간 예측 모드들 중 적어도 하나를 현재 블록의 화면 간 예측 모드로 결정하고, 상기 결정된 화면 간 예측 모드를 기초로 화면 간 예측 후보 리스트를 구성하며, 상기 화면 간 예측 후보 리스트 내 어느 하나 예측 후보를 기초로 움직임 보상을 수행하여, 상기 현재 블록의 제1 예측 블록을 생성하고, 소정의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록을 보정할 수 있다.
본 발명에 따른 컴퓨터 판독가능한 비-일시적 기록 매체는, 영상 복호화 방법에 의해 복호화되는 비트스트림을 저장하고, 상기 영상 복호화 방법은 복수의 화면 간 예측 모드들 중 적어도 하나를 현재 블록의 화면 간 예측 모드로 결정하고, 상기 결정된 화면 간 예측 모드를 기초로 화면 간 예측 후보 리스트를 구성하며, 상기 화면 간 예측 후보 리스트 내 어느 하나 예측 후보를 기초로 움직임 보상을 수행하여, 상기 현재 블록의 제1 예측 블록을 생성하며, 소정의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록을 보정할 수 있다.
본 발명에 따른 비디오 신호 처리 방법 및 장치는 화면 간 예측을 통해 비디오 신호 코딩 효율을 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 비디오 부호화 방법 및 장치의 구성을 나타내는 블록도를 도시한다.
도 2는 본 발명의 일 실시예에 따른 비디오 복호화 방법 및 장치의 구성을 나타내는 블록도를 도시한다.
도 3은 본 발명이 적용되는 일실시예로서, 트리 구조 기반의 분할 방법을 도시한 것이다.
도 4는 본 발명이 적용되는 일실시예로서, 부호화/복호화 장치에 기-정의된 화면 간 예측 모드에 기반하여 움직임 보상을 수행하는 방법을 도시한 것이다.
도 5 내지 도 17은 본 발명이 적용되는 일실시예를 도시한 것이다.
본 명세서에 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한부분에 대해서는 유사한 도면 부호를 붙였다.
본 명세서 전체에서, 어떤 부분이 다른 부분과 '연결'되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고 전기적으로 연결되어 있는 경우도 포함한다.
또한, 본 명세서 전체에서 어떤 부분이 어떤 구성요소를 '포함'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
또한, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
또한, 본 명세서에서 설명되는 장치 및 방법에 관한 실시예에 있어서, 장치의 구성 일부 또는 방법의 단계 일부는 생략될 수 있다. 또한 장치의 구성 일부 또는 방법의 단계 일부의 순서가 변경될 수 있다. 또한 장치의 구성 일부 또는 방법의 단계 일부에 다른 구성 또는 다른 단계가 삽입될 수 있다.
또한, 본 발명의 제1 실시예의 일부 구성 또는 일부 단계는 본 발명의 제2 실시예에 부가되거나, 제2 실시예의 일부 구성 또는 일부 단계를 대체할 수 있다.
덧붙여, 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 기술되고, 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있다. 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위에 포함된다.
먼저, 본 출원에서 사용되는 용어를 간략히 설명하면 다음과 같다.
이하에서 후술할 복호화 장치(Video Decoding Apparatus)는 민간 보안 카메라, 민간 보안 시스템, 군용 보안 카메라, 군용 보안 시스템, 개인용 컴퓨터(PC, Personal Computer), 노트북 컴퓨터, 휴대형 멀티미디어 플레이어(PMP, Portable MultimediaPlayer), 무선 통신 단말기(Wireless Communication Terminal), 스마트 폰(Smart Phone), TV 응용 서버와 서비스 서버 등 서버 단말기에 포함된 장치일 수 있으며, 각종 기기 등과 같은 사용자 단말기, 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 복호화하거나 복호화를 위해 화면 간 또는 화면 내 예측하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미할 수 있다.
또한, 부호화기에 의해 비트스트림(bitstream)으로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB, Universal Serial Bus)등과 같은 다양한 통신 인터페이스를 통해 영상 복호화 장치로 전송되어 복호화되어 영상으로 복원되고 재생될 수 있다. 또는 부호화기에 의해 생성된 비트스트림은 메모리에 저장될 수 있다. 상기 메모리는 휘발성 메모리와 비휘발성 메모리를 모두 포함할 수 있다. 본 명세서에서 메모리는 비트스트림을 저장한 기록 매체로 표현될 수 있다.
통상적으로 동영상은 일련의 픽쳐(Picture)들로 구성될 수 있으며, 각 픽쳐들은 블록(Block)과 같은 코딩 유닛(coding unit)으로 분할될 수 있다. 또한, 이하에 기재된 픽쳐라는 용어는 영상(Image), 프레임(Frame) 등과 같은 동등한 의미를 갖는 다른 용어로 대치되어 사용될 수 있음을 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있을 것이다. 그리고 코딩 유닛이라는 용어는 단위 블록, 블록 등과 같은 동등한 의미를 갖는 다른 용어로 대치되어 사용될 수 있음을 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있을 것이다.
이하, 첨부한 도면들을 참조하여, 본 발명의 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 비디오 부호화 방법 및 장치의 구성을 나타내는 블록도를 도시한다.
일 실시예에 따른 비디오 부호화 방법 및 장치는 화면 간 예측부(120), 화면 내 예측부(125), 감산부(130), 변환부(140), 양자화부(150), 엔트로피 부호화부(160), 역변환부(145), 역양자화부(155), 가산부(135), 양방향 필터부(180), 인루프 필터부(180), 복원 픽쳐 버퍼(190)를 포함할 수 있다.
화면 간 예측부(120)는 입력 영상(110)과 복원 픽쳐 버퍼(190)에 저장되어 있는 복원 영상을 이용하여 움직임 예측을 수행하여 예측 신호를 생성한다.
화면 내 예측부(125)는 부호화되는 현재 블록과 공간적으로 인접하는 기-복원된 주변 블록의 화소 값을 이용하여 공간적 예측을 수행하여 예측 신호를 생성한다.
감산부(130)는 입력 영상과 화면 간 예측부(120) 혹은 화면 내 예측부(125)를 통해 생성된 예측 신호를 이용하여 잔차 신호 (residual signal)를 생성한다.
변환부(140) 및 양자화부(150)는 감산부(130)를 통해 생성된 잔차 신호에 대하여 변환 및 양자화를 수행하여 양자화된 계수 (quantized coefficient)를 생성한다.
엔트로피 부호화부(160)는 비디오 압축 표준에 정의된 신택스 요소 (syntax elements) 및 양자화된 계수 등과 같은 부호화 정보에 대하여 엔트로피 부호화를 수행하여 비트스트림을 출력한다.
역변환부(145) 및 역양자화부(155)는 양자화 계수를 수신하여 역양자화 및 역변환을 차례대로 수행하고, 복원된 잔차 신호를 생성한다.
가산부(135)는 화면 간 예측부(120) 혹은 화면 내 예측부(125)를 통해 생성된 예측 신호와 복원된 잔차 신호를 이용하여 복원 신호를 생성한다.
상기 복원 신호는 인루프 필터부(180)로 전달되어 디블록킹 필터, SAO (Sample Adaptive Offset), ALF (Adaptive Loop Filter)와 같은 하나 혹은 그 이상의 인루프 필터를 적용하여 최종 복원 픽쳐를 생성하여 복원 픽쳐 버퍼(190)에 저장된다.
상기 복원 픽쳐 버퍼(190)에 저장된 복원 픽쳐는 화면 간 예측부(120)에서 참조 픽쳐로 사용될 수 있다.
도 2는 본 발명의 일 실시예에 따른 비디오 복호화 방법 및 장치의 구성을 나타내는 블록도를 도시한다.
일 실시예에 따른 비디오 복호화 장치 및 방법은 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 화면 내 예측부(240), 화면 간 예측부(250), 가산부(260), 양방향 필터부(270), 인루프 필터부(280), 복원 픽쳐 버퍼(290)를 포함할 수 있다.
엔트로피 복호화부(210)는 입력된 비트스트림(200)을 복호화하여 신택스 요소 (syntax elements) 및 양자화된 계수 등과 같은 복호화 정보를 출력한다.
역양자화부(220) 및 역변환부 (230)는 양자화 계수를 수신하여 역양자화 및 역변환을 차례대로 수행하고, 잔차 신호 (residual signal)를 출력한다.
화면 내 예측부(240)는 복호화되는 현재 블록과 인접하는 기-복호화된 주변 블록의 화소 값을 이용하여 공간적 예측을 수행하여 예측 신호를 생성한다.
화면 간 예측부(250)는 비트스트림으로부터 추출된 움직임 벡터와 복원 픽쳐 버퍼(280)에 저장되어 있는 복원 영상을 이용하여 움직임 보상을 수행하여 예측 신호를 생성한다.
가산부(260)는 화면 내 예측부(240) 혹은 화면 간 예측부(250)를 통해 생성된 예측 신호와 복원된 잔차 신호를 이용하여 복원 신호를 생성한다.
양방향 필터부(270)는 가산부(260)를 통해 생성된 복원 신호에 대하여 양방향 필터를 수행하여, 필터가 적용된 신호를 생성한다.
상기 복원 신호는 인루프 필터부(270)로 전달되어 디블록킹 필터, SAO (Sample Adaptive Offset), ALF (Adaptive Loop Filter)와 같은 하나 혹은 그 이상의 인-루프 필터를 적용하여 최종 복원 픽쳐를 생성하여 복원 픽쳐 버퍼(280)에 저장된다.
상기 복원 픽쳐 버퍼(280)에 저장된 복원 픽쳐는 화면 간 예측부(250)에서 참조 픽쳐로 사용될 수 있다.
도 3은 본 발명이 적용되는 일실시예로서, 트리 구조 기반의 분할 방법을 도시한 것이다.
트리 구조 기반의 분할은, 쿼드 트리(Quad-tree), 바이너리 트리(Binary-tree) 또는 터너리 트리(Ternary-tree) 중 적어도 하나에 기초하여 수행될 수 있다. 쿼드 트리는, 상위 부호화 블록을 4개의 하위 부호화 블록으로 분할하는 타입일 수 있다. 여기서, 하위 부호화 블록의 너비와 높이 각각은, 상위 부호화 블록의 너비와 높이의 절반일 수 있다. 바이너리 트리는, 상위 부호화 블록을 2개의 하위 부호화 블록을 분할하는 타입일 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 상위 부호화 블록은 수평 방향으로 2분할되거나, 수직 방향으로 2분할될 수 있다. 이때, 하위 부호화 블록의 너비 또는 높이는, 상위 부호화 블록의 너비 또는 높이의 절반일 수 있다. 터너리 트리는, 상위 부호화 블록을 3개의 하위 부호화 블록으로 분할하는 타입일 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 터너리 트리는, 바이너리 트리와 마찬가지로, 수평 방향 또는 수직 방향 중 어느 하나의 방향으로 3분할될 수 있다. 이때, 3개의 하위 부호화 블록의 너비 또는 높이의 비율은, 1:2:1, 1:1:2 또는 2:1:1 일 수 있다.
전술한 분할 타입은, 부호화/복호화 장치에 기-약속된 우선순위에 기초하여 적용될 수 있다. 예를 들어, 상기 바이너리 트리와 터너리 트리 중 적어도 하나는, 쿼드 트리에 기반한 블록 분할이 더 이상 수행되지 않는 경우에 한하여 허용될 수 있다. 다만, 이에 한정되지 아니하며, 바이너리 트리와 터너리 트리 중 적어도 하나에 기반한 블록 분할이 수행된 이후에, 쿼드 트리 기반의 블록 분할이 추가적으로 수행될 수도 있다.
상기 블록 분할은, 소정의 분할 정보에 기초하여 수행될 수 있다. 분할 정보는, 분할 여부를 지시하는 제1 정보, 분할 방향을 지시하는 제2 정보 또는 분할 타입 또는 분할 개수를 지시하는 제3 정보 중 적어도 하나를 포함할 수 있다. 상기 제1 정보는, 현재 부호화 블록이 전술한 트리 구조에 기반하여 분할되는지 여부를 나타내는 제1 플래그, 현재 부호화 블록이 쿼드 트리에 기반하여 분할되는지 여부를 나타내는 제2 플래그 또는 현재 부호화 블록이 쿼드 트리 외에 다른 트리 구조에 기반하여 추가적으로 분할되는지 여부를 나타내는 제3 플래그 중 적어도 하나를 포함할 수 있다. 전술한 분할 정보 중 적어도 하나는 부호화 장치에서 부호화되어 시그널링 될 수 있고, 또는 소정의 부호화 파라미터에 기반하여 복호화 장치에서 유도될 수도 있다. 여기서, 부호화 파라미터는, 블록 크기/형태, 분할 뎁스, 블록 위치(e.g., 블록이 소정의 조각 영역의 경계에 위치하는지 여부), 변환 타입(e.g., DCT, DST, 변환 스킵 등), 성분 타입(e.g, 휘도, 색차), 주변 블록의 분할 타입, 등을 포함할 수 있다.
예를 들어, 제1 플래그가 true인 경우, 쿼드 트리 분할 여부를 지시하는 제2 플래그가 시그널링되고, 제2 플래그가 false인 경우, 현재 부호화 블록은 더 이상 분할되지 않는다. 제2 플래그가 true인 경우, 현재 부호화 블록은 4개의 부호화 블록으로 분할되고, 제2 플래그가 false인 경우, 현재 부호화 블록은 바이너리 트리 또는 터너리 트리에 기반하여 분할될 수 있다. 이를 위해 분할 방향을 지시하는 제2 정보와 분할 타입을 지시하는 제3 정보가 시그널링 될 수 있다. 제2 정보가 제1 값인 경우, 수직 방향으로 분할되고, 그렇지 않은 경우, 수평 방향으로 분할될 수 있다. 제3 정보가 제1 값인 경우, 바이너리 트리가 적용되고, 그렇지 않은 경우, 터너리 트리가 적용될 수 있다. 또는, 제2 플래그가 false인 경우, 쿼드 트리 외에 다른 트리 구조에 기반하여 분할되는지 여부를 나타내는 제3 플래그가 시그널링 될 수도 있다. 이 경우 제3 플래그가 true인 경우, 분할 방향을 지시하는 제2 정보와 분할 타입을 지시하는 제3 정보에 기초하여, 바이너리 트리 또는 터너리 트리에 기반한 블록 분할을 수행할 수 있다.
한편, 현재 부호화 블록이 소정의 문턱크기보다 큰 경우에는 쿼드 트리만이 허용되고, 그렇지 않은 경우에는 쿼드 트리, 바이너리 트리 및 터너리 트리에 기반한 분할이 허용될 수 있다. 상기 문턱크기는, 부호화/복호화 장치에 기-설정된 고정된 값(e.g., 128, 64, 32)일 수도 있고, 부호화 장치에서 부호화되어 시그널링 될 수도 있다. 현재 부호화 블록이 소정의 문턱크기보다 큰 경우, 쿼드 트리 분할만이 허용되므로, 전술한 분할 정보가 시그널링되지 않을 수 있다.
이하, 블록, 부호화 블록, 현재 부호화 블록 및 현재 블록의 용어는 전술한 트리 구조 기반의 분할이 더 이상 수행되지 않는 리프 노드(leaf node)의 부호화 블록을 의미하는 것으로 이해될 수 있다. 부호화 블록은 코딩 블록과 동일한 의미로 해석될 수 있다. 부-블록은, 상기 리프 노드의 부호화 블록을 구성하는 서브-블록을 의미하는 것으로 이해될 수 있다. 화면 간 예측 정보는, 현재 블록의 움직임 보상을 위한 후보 움직임 정보를 의미할 수도 있고, 해당 움직임 정보를 가진 후보 블록 정보를 의미할 수도 있다. 또는, 경우에 따라서, 화면 간 예측 정보는, 후보 움직임 정보 중에서, 현재 블록의 움직임 보상에 이용되는 움직임 정보를 의미할 수도 있다. 움직임 정보는, 움직임 벡터, 참조 픽쳐 인덱스, 예측 방향(e.g., L0 예측, L1 예측), 참조 픽쳐 리스트 정보 중 적어도 하나를 포함할 수 있다.
화면 간 예측(Inter prediction)은 움직임 벡터와 복원 픽쳐 버퍼(DPB, Decoded Picture Buffer)에 저장되어 있는 복원 영상을 이용하여 예측 블록을 생성하는 것으로, 움직임 추정(motion estimation) 및 움직임 보상(motion compensation)을 통해 이루어진다.
움직임 추정(Motion Estimation)은 복원 픽쳐 버퍼에 저장되어 화면 간 예측에 사용되는 픽쳐들로부터 최적의 예측 블록을 찾는 과정을 나타낼 수 있으며, 움직임 보상(motion compensation)은 움직임 추정 과정에서 찾은 최적의 예측 블록에 대한 움직임 정보(모션 벡터, 참조 픽쳐 인덱스)를 바탕으로 예측 블록을 생성하는 것을 나타낼 수 있다.
또한, 인터 예측은 하나의 블록에 대해 시간축 상에서 과거의 픽쳐 혹은 미래의 픽쳐 하나만을 참조 픽처로 사용하는 단방향 예측(Uni-directional prediction)과 과거와 미래 픽쳐들을 동시에 참조하는 양방향 예측(Bi-directional prediction)으로 나눌 수 있다. 이는, 슬라이스 타입에 의해 결정될 수 있다.
화면 간 예측에서 하나의 슬라이스는 P-슬라이스 (Predictive slice), B-슬라이스 (Bi-predictive slice)로 구분될 수 있고, P-슬라이스의 화면 간 예측은 단방향 예측만 수행하고, B-슬라이스의 화면 간 예측은 단방향 예측 및 양방향 예측 중 어느 하나를 선택적으로 사용할 수 있다.
또한, 단방향 예측(Uni-directional prediction)은 시간적으로 현재 픽쳐 이전에 표시(또는 출력)되는 1개의 참조 픽쳐를 이용하는 순방향 예측(forward direction prediction)과 시간적으로 현재 픽쳐 이후에 표시(또는 출력)되는 1개의 참조 픽쳐를 이용하는 역방향 예측(backward direction prediction)으로 구분될 수 있다.
인터 예측 과정(즉, 단방향 또는 양방향 예측)에서 현재 블록을 예측하는데 어떤 참조 영역(또는 참조 블록)이 이용되는지 특정하기 위하여 사용되는 움직임 정보(또는 파라미터)는 인터 예측 모드(inter prediction mode)(여기서, 인터 예측 모드는 참조 방향(즉, 단방향 또는 양방향)과 참조 리스트(즉, L0, L1 또는 양방향)을 지시할 수 있음), 참조 인덱스(reference index)(또는 참조 픽쳐 인덱스 또는 참조 리스트 인덱스), 움직임 벡터(motion vector) 정보를 포함한다. 움직임 벡터 정보는 움직임 벡터, 움직임 벡터 예측값(MVP: motion vector prediction) 또는 움직임 벡터 차분값(MVD: motion vector difference)을 포함할 수 있다. 움직임 벡터 차분값은 상기 움직임 벡터와 움직임 벡터 예측값 간의 차분값을 의미한다.
화면 간 예측 부/복호화에 있어 현재 블록의 예측 정보를 유도할 때 전송하는 움직임 정보를 줄이기 위해 주변 블록에서 존재하는 화면 간 예측 움직임 정보를 이용한다. 화면 간 예측 모드는 탐색된 화면 간 예측 정보를 줄이기 위해 주변 블록의 움직임 정보로부터 움직임 벡터 예측기(motion vector predictor)를 유도하는 AMVP 방법과 주변 블록의 화면 간 예측 움직임 정보를 그대로 사용하는 Merge/Skip 방법으로 나눌 수 있다. 또한, 각 방법은 수행하는 블록 단위에 따라서 부호화 블록 단위 또는 부-블록 단위의 모드로 분류할 수 있다. 부-블록 단위 Merge/Skip 방법은 ATMVP, STMVP, Affine모드 중 적어도 하나를 포함할 수 있고 부-블록 단위 AMVP 모드는 ATMVP, STMVP, Affine 모드 중 적어도 하나를 포함할 수 있다. 부-블록 단위 AMVP 모드에서는, ATMVP, STMVP 중 적어도 하나가 이용되지 않도록 제한될 수 있다.
이하, 주변 블록은, 공간적 주변 블록 또는 시간적 주변 블록 중 적어도 하나를 포함할 수 있다. 공간적 주변 블록은, 현재 블록의 좌측, 상단, 좌상단, 우상단 또는 좌하단 중 적어도 하나에 인접한 블록이거나 소정의 거리만큼 떨어진 블록일 수 있다. 여기서, 소정의 거리는, 블록 파라미터에 기초하여 결정되거나, 부호화기/복호화기에 기-약속된 고정된 값일 수도 있다. 블록 파라미터는, 블록의 너비/높이, 형태, 뎁스, 분할 기법(e.g., 쿼드트리, 바이너리트리, 터너리 트리, triangular partitioning 등) 등을 포함할 수 있다. 이때, 블록 파라미터는, 현재 블록 및/또는 주변 블록에 관한 것일 수 있다. 시간적 주변 블록은, 현재 블록과 다른 픽쳐에 속한 블록으로서, 현재 블록과 동일 위치의 블록(이하, 콜 블록)을 의미할 수 있다. 콜 블록은, 현재 블록의 중앙 위치를 포함하는 블록 또는 현재 블록의 각 코너(e.g., 좌상단, 우하단 등)에 인접한 블록 중 적어도 하나를 포함할 수 있다.
ATMVP, Affine Merge/Inter 방법은 소정의 순서에 따라 공간적 주변 블록에서 움직임 정보의 가용 여부를 판단하고 필요한 움직임 정보를 유도한다. 주변 블록의 정보 가용 여부를 판단하는 블록 위치가 동일함에도 각 기술 간 탐색에 주어진 순서가 다를 수 있다.
상기 소정의 순서는, 부호화기/복호화기에 기-정의된 고정된 순서일 수도 있고, 전술한 부호화 파라미터에 기초하여 가변적으로 결정될 수도 있다.
상기 부호화 파라미터는, 블록 속성에 관한 정보를 포함할 수 있다. 여기서, 블록 속성은 위치, 크기, 형태, 너비와 높이의 비율(ratio), 너비와 높이의 길이값, 분할 기법(e.g., Quad tree, Binary tree, Ternary tree), 분할 뎁스, 화면 간 예측 모드(e.g., merge mode인지 여부, 어파인 모드인지 여부), 어파인 모드 타입(4-parameter, 6-parameter) 등을 의미할 수 있다. 상기 블록 속성은, 현재 블록 및/또는 현재 블록의 주변 블록에 관한 속성을 의미할 수 있다. 상기 위치는, 블록(CU) 또는 부-블록이 소정의 조각 영역의 경계에 접하는지 여부를 의미할 수도 있고, 블록 내 부-블록의 위치를 의미할 수도 있다. 소정의 조각 영역은, 타일, 슬라이스, CTU row 또는 CTU를 의미할 수 있다. 상기 소정의 순서는, 블록 속성과 부호화기/복호화기에 기-결정된 제1 문턱값 간의 비교에 기초하여 결정될 수도 있다.
본 발명에서는 부-블록 화면 간 예측 과정에서 후보를 구성하기 위해 주변 블록을 탐색하는 순서를 현재 블록과의 상관성을 고려해 동일한 순서로 탐색하게 하여, 부호화 성능의 저하 없이 주변 블록을 중복적으로 탐색하는 과정을 막을 수 있다.
화면 간 예측 모드는 주변 블록으로부터 움직임 벡터 예측기를 유도하는 AMVP 방법과 주변 블록의 화면 간 예측 움직임 정보를 그대로 사용하는 Merge/Skip 방법으로 나눌 수 있다. 또한, 각 방법은 수행하는 블록 단위에 따라서 부호화 블록 단위 또는 부-블록 단위의 모드로 구분할 수 있다. 이 중 부-블록 단위의 화면 간 예측 모드의 경우, Affine 모델을 사용하여 예측 부호화 한 주변 블록의 Affine 모델을 사용하는 상속 Affine 화면 간 예측, 주변 블록의 움직임 정보로부터 Affine 모델을 유도하여 사용하는 조합 Affine 화면 간 예측, ATMVP 등의 방법으로 후보 리스트를 구성한다. 각 화면 간 예측 모드는 주변 블록의 움직임 정보를 사용하기 위해서 특정 개수의 리스트를 구성할 수 있고 리스트를 채우기 위해 특정 순서대로 주변 블록을 탐색한다.
부-블록 단위 화면 간 예측 모드의 후보 리스트를 구성하기 위해 ATMVP, 상속 Affine 화면 간 예측, 조합 Affine 화면 간 예측 등을 사용한다. 이때, 해당 예측 모드를 구성하기 위하여 시/공간적 주변 블록을 현재 블록과의 상관성에 따라 특정 순서로 탐색하여, 부호화 성능 저하 없이 주변 블록을 중복적으로 탐색하지 않고 후보 리스트를 구성할 수 있다.
부-블록 단위 화면 간 예측에서 후보 리스트들을 구성할 때 현재 블록의 시/공간적 주변 블록의 움직임 정보를 이용한다. 후보 리스트에 우선 순위로 구성된 움직임 정보일 수록 더 낮은 비트를 할당하여 전송하게 된다. 리스트를 구성하기 위한 여러 모드에 대해 상관성이 높은 주변 블록을 일괄적으로 탐색함으로써 개별적으로 동일한 위치를 여러 번 탐색하는 비효율적인 복잡도를 줄일 수 있다.
도 4는 본 발명이 적용되는 일실시예로서, 부호화/복호화 장치에 기-정의된 화면 간 예측 모드에 기반하여 움직임 보상을 수행하는 방법을 도시한 것이다.
본 발명은, 현재 블록에 대한 화면 간 예측 부호화/복호화를 수행함에 있어, 화면 간 예측 모드 결정 단계(S400), 화면 간 예측 후보 유도 단계(S410), 움직임 보상/보정 단계(S420)를 포함하는 것을 특징으로 하는 화면 간 예측 부호화/복호화 방법 및 장치를 제안한다.
화면 간 예측 모드 결정 단계(S400)는, 스킵(Skip) 모드, 머지(Merge) 모드, AMVP 모드 중 적어도 하나의 예측 모드를 현재 블록의 화면 간 예측 모드로 결정할 수 있다.
추가적으로, 다음의 모드 중 적어도 하나의 예측 모드를 현재 블록의 화면 간 예측 모드로 결정할 수 있다. 이때, 결정은, 스킵(Skip) 모드, 머지(Merge) 모드, AMVP 모드 중 적어도 하나에 기반하여 수행될 수 있다.
- 부(sub)- 블록 단위 머지 모드
- 부-블록 단위 스킵 모드
- 부-블록 단위 AMVP 모드
- MMVD 모드
- MH Intra 모드
- Triangular 모드
화면 간 예측 후보 유도 단계(S410)는, 공간적 주변 블록의 화면 간 예측 정보, 시간적 주변 블록의 화면 간 예측 정보, HMVP, 합성 화면 간 예측 정보, 조합 Affine 화면 간 예측 정보, 상속 Affine 화면 간 예측 정보, ATMVP, 또는 STMVP 중 적어도 하나 이상을 이용하여 화면 간 예측 후보 리스트를 구성할 수 있다.
추가적으로, 상기 리스트를 구성함에 있어, 다음의 화면 간 예측 정보 중 적어도 하나를 이용할 수 있다.
- MV (motion vector)
- 참조 픽처 방향
- 참조 픽처 인덱스
- Affine 플래그: Affine 모드의 이용 여부를 특정함
- MMVD 플래그: MMVD 모드의 이용 여부를 특정함
- MH Intra 플래그: MH Intra 모드 이용 여부를 특정함
- Triangular 플래그: Triangular 모드의 이용 여부를 특정함
- CPMV (control point motion vector)
움직임 보상/보정 단계(S420)는, 움직임 보상, 밝기 보상(IC), OBMC, BIO, Affine 움직임 보상, 또는 복호화 상 움직임 보정 중 적어도 하나를 이용하여 화면 간 예측 및 움직임 보상/보정을 할 수 있다. 또한, 움직임 보상/보정 단계(S420)는 움직임 보상에 따른 예측 블록을 보정하는 과정을 포함할 수 있다. 여기서, 보정은, 움직임 보상에 따른 예측 블록과 현재 블록에 화면 내 예측을 수행하여 획득된 예측 블록을 조합하는 과정을 의미할 수 있다.
구체적으로, 화면 간 예측 모드 결정 단계(S400)에서는, 현재 블록에 대한 화면 간 예측에서 Skip, Merge, AMVP 중 적어도 하나의 예측 모드를 현재 블록의 화면 간 예측 모드로 결정할 수 있다.
현재 블록의 화면 간 예측 모드를 Merge 모드로 결정할 수 있다.
상기 Merge 모드로 결정된 경우, 주변 블록의 움직임 정보를 현재 블록에 동일하게 적용하여 현재 블록의 예측 블록을 얻을 수 있다. 여기서, 주변 블록은, 좌측 블록(F), 상단 블록(D), 좌하단 블록(G), 우상단 블록(E) 또는 좌상단 블록(A) 중 어느 하나일 수 있다.
예를 들어, 도 5의 F, G위치에 존재하는 좌측 블록의 움직임 정보 중 적어도 하나를 사용할 수 있다. 예를 들어, 도 5의 D, E위치에 존재하는 상단 블록의 움직임 정보 중 적어도 하나를 사용할 수 있다. 예를 들어, 도 5의 A위치에 존재하는 좌상단 블록의 움직임 정보를 사용할 수 있다.
주변 블록을 통해 현재 블록에 대한 예측을 수행하고, 그에 따른 잔여 블록들을 생성할 수 있다.
주변 블록들 중에 예측 정보와 잔여 블록의 부호화에 최소한의 비용이 소비되는 주변 블록의 화면 간 예측 정보를 현재 블록의 부호화를 위해 사용할 수 있다.
현재 블록의 화면 간 예측 모드를 Skip 모드로 결정할 수 있다.
상기 Skip 모드로 결정된 경우, 주변 블록의 움직임 정보를 현재 블록에 움직임 정보로 사용한다.
예를 들어, 도 5의 F, G 위치에 존재하는 좌측 블록의 움직임 정보 중 적어도 하나를 사용할 수 있다. 예를 들어, 도 5의 D, E 위치에 존재하는 상단 블록의 움직임 정보 중 적어도 하나를 사용할 수 있다. 예를 들어, 도 5의 A 위치에 존재하는 상단 블록의 움직임 정보를 사용할 수 있다.
주변 블록을 통해 현재 블록에 대한 예측을 수행하고, 그에 따른 잔여 블록들을 생성하지 않는다.
현재 블록의 화면 간 예측 모드를 AMVP 모드로 결정할 수 있다.
상기 AMVP 모드로 결정된 경우, 주변 블록의 움직임 정보를 현재 블록에 예측 움직임 정보로 사용할 수 있다.
예를 들어, 도 5의 F, G 위치에 존재하는 좌측 블록의 움직임 정보 중 적어도 하나를 사용할 수 있다. 예를 들어, 도 5의 D, E 위치에 존재하는 상단 블록의 움직임 정보 중 적어도 하나를 사용할 수 있다. 예를 들어, 도 5의 A 위치에 존재하는 상단 블록의 움직임 정보를 사용할 수 있다.
주변 블록을 통해 현재 블록에 대한 예측 움직임 정보를 얻고, 해당 움직임 정보를 기반으로 추가적인 수색을 통해 현재 블록에 대한 예측 블록을 얻을 수 있다.
주변 블록들 중에 예측 정보와 잔여 블록의 부호화에 최소한의 비용이 소비되는 주변 블록의 화면 간 예측 정보를 현재 블록의 부호화를 위해 사용할 수 있다.
상기 화면 간 예측 모드를 결정한 이후, 추가적으로 부-블록(sub-block) 단위 Merge 모드, 부-블록 단위 Skip 모드, 부-블록 단위 AMVP 모드, MMVD 모드, MH Intra 모드, Triangular 모드 중 적어도 하나의 예측 모드를 현재 블록의 화면 간 예측 모드로 결정할 수 있다. 이때, 결정하는 것은 플래그, 인덱스 등의 정보를 통하여 결정할 수 있다. 상기 플래그, 인덱스 등의 정보는, 부호화기에서 시그날링될 수도 있고, 복호화기에서 소정의 부호화 파라미터를 기반으로 유도될 수도 있다.
상기 부-블록 단위의 예측 모드는 현재 블록을 M개의 부-블록으로 분할할 수 있고, n개의 화면 간 예측 정보를 가질 수 있다. 여기서, M은 n보다 크거나 같을 수 있다. M>n인 경우, 현재 블록에 속한 복수의 부-블록이 하나의 화면 간 예측 정보를 공유할 수 있다. 이때, 복수의 부-블록은 상호 인접한 블록일 수도 있고, 현재 블록 내에서 서로 인접하지 않은 블록일 수도 있다. 부-블록의 크기는 4x4, 4x8, 8x4, 4x16, 16x4… 2NxN, Nx2N 중 적어도 하나일 수 있으며, 소정의 크기로 고정되어 질 수 있다.
부-블록 단위의 움직임 정보를 유도함에 있어, 부-블록의 크기는 최소의 비용을 가지는 부-블록 크기로 결정할 수 있다. 이때, 비용은 SATD, SAD, RD-cost, 이전 픽쳐의 평균 블록 사이즈 등의 방법 중 적어도 하나의 방법으로 구할 수 있다. 참조 블록의 부-블록 단위에 대해 움직임 정보가 존재하지 않는 경우, 소정의 위치에 있는 부-블록의 움직임 정보로 대체할 수 있다. 소정의 위치는, 참조 블록 내 우하단 또는 중앙 위치, 참조 블록의 우하단 코너 위치 등을 의미할 수 있다. 여기서, 우하단 코너 위치는, 참조 블록의 우하단 샘플을 기준으로, 우측, 하단, 또는 우하단에 인접한 블록의 위치를 의미할 수도 있다.
현재 블록의 화면 간 예측 모드를 결정함에 있어 부-블록 단위 Merge 모드를 결정할 수 있다.
현재 블록의 부-블록 단위 Merge 모드는 ATMVP, Affine 모드 중 하나 이상의 방법으로 수행될 수 있다. 즉, 현재 블록의 화면 간 예측 모드가 ATMVP 또는 Affine 모드인 경우, 부-블록 단위의 Merge를 적용할 수 있다.
어파인 머지 모드는 주변 블록으로부터 양의 정수 N개의 위치와 그 위치의 CPMV를 유도할 수 있다.
예를 들어, 도 5의 F, G 위치에 존재하는 좌측 블록의 좌상단, 우상단 혹은 좌하단 CPMV 중 적어도 하나를 이용해 현재 블록의 좌상단, 우상단 혹은 좌하단 CPMV(control point MV)를 유도할 수 있다. 이는, 현재 블록에 대한 복수의 후보 CPMV 중 어느 하나일 수 있다.
예를 들어, 도 5의 E, D, A 위치에 존재하는 상단 블록의 좌상단, 우상단 혹은 좌하단 CPMV 중 적어도 하나를 이용해 현재 블록의 좌상단, 우상단 혹은 좌하단 CPMV를 유도할 수 있다. 이는, 현재 블록에 대한 복수의 후보 CPMV 중 어느 하나일 수 있다. 또는, 전술한 제k 그룹(k=1, 2, 3) 중 적어도 하나의 좌상단, 우상단 혹은 좌하단 CPMV 중 적어도 하나를 이용해 현재 블록의 좌상단, 우상단 혹은 좌하단 CPMV를 유도할 수 있다. 이는, 현재 블록에 대한 복수의 후보 CPMV 중 어느 하나일 수 있다.
도 5에서, 제1 그룹(A, B, C), 제2 그룹(D, E) 또는 제3 그룹(F, G) 중 어느 하나를 선택하여 현재 블록의 CPMV를 유도할 수 있다. 또는, 제1 그룹 중 적어도 하나, 제2 그룹 중 적어도 하나 및 제3 그룹 중 적어도 하나를 선택하여 현재 블록의 CPMV를 유도할 수 있다.
상기 선택은, 소정의 우선순위에 기초하여 수행될 수 있다. 예를 들어, 제1 그룹이 제2 그룹 또는 제3 그룹보다 우선순위를 가질 수 있다. 제3 그룹이 제1 그룹 또는 제2 그룹보다 우선순위를 가질 수 있다. 각 그룹 내에서 블록 간의 우선순위는, 하단->상단 및 좌측->우측이거나, 우측->좌측 및 상단->하단일 수 있다. 또는, 좌측->우측 및 상단-> 하단이거나, 그 역방향일 수도 있다. 상기 우선순위는 그룹의 위치에 관계없이 동일할 수도 있고, 그룹 별로 상이하게 설정될 수도 있다.
상기 유도는, 현재 블록의 부-블록 단위로 수행될 수 있다. 상기 유도 과정에서, 현재 블록 내 부-블록의 위치에 따라 특정 그룹의 이용이 제한될 수도 있다. 예를 들어, 제1/제2 그룹만이 이용되거나, 제1/제3 그룹만이 이용되거나, 제2/제3 그룹만이 이용될 수 있다. 또는, 부호화기/복호화기에 기-정의된 블록 쌍(pair)을 이용하여 현재 블록의 CPMV를 유도할 수 있다. 상기 블록 쌍 중 어느 하나는 제1 그룹 내지 제3 그룹 중 어느 하나에 속할 수 있고, 다른 하나는 다른 그룹에 속할 수 있다. 상기 블록 쌍은, 현재 부-블록 별로 상이하게 정의될 수 있다.
현재 블록의 부-블록 단위 Merge 모드를 수행함에 있어 Merge 인덱스 또는 잔차 신호 중 적어도 하나로 예측 정보를 구성하고 시그널링 할 수 있다.
최소한의 비용이 소비되는 주변 블록의 부-블록 단위 화면 간 예측 정보를 현재 블록의 부호화를 위해 사용할 수 있다.
현재 블록의 화면 간 예측 모드를 결정함에 있어 부-블록 단위 Skip 모드를 결정할 수 있다.
현재 블록의 부-블록 단위 skip 모드를 수행함에 있어, Merge 인덱스로 예측 정보를 구성하고 시그널링 할 수 있다.
주변 블록들 중에 예측 정보에 최소한의 비용이 소비되는 주변 블록의 부-블록 단위 화면 간 예측 정보를 현재 블록의 부호화를 위해 사용할 수 있다.
주변 블록의 부-블록 단위 움직임 정보를 현재 블록의 부-블록 단위 움직임 정보로 사용하고, 그에 따른 잔여 블록을 생성하지 않을 수 있다.
현재 블록의 화면 간 예측 모드를 결정함에 있어 부-블록 단위 AMVP 모드를 결정할 수 있다.
현재 블록의 부-블록 단위 AMVP 모드는 현재 블록의 화면 간 예측 모드가 Affine 모드인 경우 적용할 수 있다.
현재 블록의 부-블록 단위 AMVP 모드를 수행함에 있어 AMVP 인덱스, 움직임 정보 차이(mvd), 참조 픽처 인덱스, 참조 방향과 잔차 신호로 예측 정보를 구성하고 시그널링 할 수 있다.
최소한의 비용이 소비되는 주변 블록의 부-블록 단위 화면 간 예측 정보를 현재 블록의 부호화를 위해 사용할 수 있다.
현재 블록의 화면 간 예측 모드를 결정함에 있어 MMVD 모드를 결정할 수 있다.
현재 블록의 화면 간 예측 정보를 유도할 때 주변 블록의 움직임 정보를 사용할 수 있다.
예를 들어, Merge 후보 리스트에 존재하는 움직임 정보를 사용할 수 있다.
주변 블록의 움직임 정보에 일정한 방향과 MVD (Motion Vector Difference) 크기를 시그널링하여 사용할 수 있다.
주변 블록의 움직임 정보와 추가적인 시그널링을 통해 현재 블록에 대한 예측을 수행하고, 그에 따른 잔여 블록들을 생성할 수 있다.
주변 블록들 중에 적어도 하나 이상의 화면 간 예측 정보와 추가적인 방향 정보, MVD의 크기 정보를 현재 블록의 부호화를 위해 사용할 수 있다. 여기서, 방향 정보는, 상, 하, 좌 또는 우 중 어느 하나의 방향을 지시할 수 있다.
현재 블록의 화면 간 예측 모드를 결정함에 있어 MH Intra 모드를 결정할 수 있다.
MH Intra 모드는, 화면 간 예측을 통해 현재 블록의 제1 예측 블록을 획득하고, 화면 내 예측을 통해 현재 블록의 제2 예측 블록을 획득하며, 제1 및 제2 예측 블록을 조합하여 최종 예측 블록을 획득하는 모드일 수 있다. 제1 예측 블록은, 전술한 화면 간 예측 모드(즉, 블록 단위 또는 부-블록 단위의 SKIP 모드, MERGE 모드, AMVP 모드) 중 어느 하나를 이용하여 획득될 수 있다. 제2 예측 블록은 MPM 기반으로 유도된 화면 내 예측 모드 또는 부호화/복호화 장치에 기-정의된 화면 내 예측 모드를 이용하여 획득될 수 있다.
예를 들어, 현재 블록의 MH Intra모드를 수행함에 있어 Merge 인덱스와 화면 내 예측 모드를 시그널링 할 수 있다. 상기 화면 내 예측 모드를 유도하기 위해 MPM (Most Probable Mode) 후보 정보를 구성할 수 있다.
현재 블록의 부호화를 위해 Merge 인덱스와 화면 내 예측을 위한 MPM (Most Probable Mode) 후보 정보를 사용할 수 있다. 상기 MPM은 화면 내 예측 모드 중 인접한 주변 블록의 화면 내 예측 모드를 현재 화면 내 예측 모드의 후보로 구성할 수 있다.
현재 블록의 화면 간 예측 모드를 결정함에 있어 Triangular 모드를 결정할 수 있다.
현재 블록의 화면 간 예측 정보는, 하나 또는 그 이상의 주변 블록의 움직임 정보를 이용하여 유도될 수 있다. 이때, 상기 유도는, 상기 복수의 주변 블록의 움직임 정보를 결합하여 수행될 수 있다. 현재 블록에 속한 triangular partitions은 하나의 후보 리스트를 공유할 수 있고, partition 별로 움직임 정보를 특정하기 위한 인덱스가 각각 시그날링될 수 있다.
현재 블록의 화면 간 예측 정보를 두 개 이상의 주변 블록의 움직임 정보와 화면 내 예측을 결합하여 사용할 수 있다.
예를 들어, 현재 블록을 대각선 방향으로 분할하여 다른 주변 블록의 움직임 정보를 가질 수 있다.
현재 블록의 Triangular 모드를 수행함에 있어 Triangular 인덱스, 잔차 신호로 예측 정보를 구성하고 시그널링 할 수 있다.
최소한의 비용이 소비되는 두 개 이상의 주변 블록의 화면 간 예측 정보 결합을 현재 블록의 부호화를 위해 사용할 수 있다.
화면 간 예측 후보 유도 단계(S410); 화면 간 예측 후보를 유도함에 있어 공간적 주변 블록의 화면 간 예측 정보, 시간적 주변 블록의 화면 간 예측 정보, HMVP (History based Motion Vector Predictor), 합성 화면 간 예측 정보, 조합 Affine 화면 간 예측 정보, 상속 Affine 화면 간 예측 정보, ATMVP, STMVP 중 적어도 하나 이상을 후보로 유도할 수 있다. 상기 하나 이상의 예측 후보를 이용하여 화면 간 예측 후보 리스트를 구성할 수 있으며, 상기 예측 후보는 움직임 벡터, 참조 방향, 참조 픽처 인덱스, Affine 플래그, MH Intra 플래그, MMVD 플래그, Triangular 플래그, CPMV 중 적어도 하나 이상의 정보를 포함할 수 있다. 상기 화면 간 예측 후보 리스트는 하나 이상일 수 있다.
상기 Affine 플래그는 부-블록 단위 화면 예측 모드 사용 유무를 나타내는 플래그이다. 상기 Affine 플래그는 블록 단위 혹은 부-블록 단위의 Affine 모드의 사용 유무를 나타내는 플래그이다.
상기 MH Intra 플래그는 MH Intra 모드 사용 유무를 나타내는 플래그이다.
상기 MMVD 플래그는 MMVD 예측 모드 사용 유무를 나타내는 플래그이다.
상기 Triangular 플래그는 Triangular 예측 모드 사용 유무를 나타내는 플래그이다.
상기 CPMV (Control Point Motion Vector)는 Affine으로 부호화 하기 위해 이용하는 움직임 벡터일 수 있다. 상기 CPMV는 Affine으로 부호화 된 블록의 좌상단, 우상단, 좌하단, 또는 우하단 위치 중 적어도 하나를 포함한 부-블록 단위 움직임 정보일 수 있다. Affine으로 부/복호화된 이전 블록의 CPMV를 수학식 1을 통해 현재 블록의 CPMV를 유도할 수 있다. 현재 블록에 Affine을 적용하기 위해 1개 (2-parameter), 두 개 (4-parameter) 혹은 두 개 초과 (6-parameter, …)의 CPMV를 이용할 수 있다.
Figure pat00001
예를 들어, 도 7과 같이 좌측 블록의 좌상단 (x3,y3), 우상단(x4,y4) 혹은 좌하단(x5,y5)을 포함한 CPMV를 이용해 수학식 1과 같이 현재 블록의 좌상단(x0,y0), 우상단(x1,y1) 혹은 좌하단(x2,y2) CPMV를 유도할 수 있다. 상기 현재 블록의 CPMV를 Affine model에 적용하여 부-블록 단위 움직임 정보를 유도할 수 있다. 다만, 좌측 블록에 한하지 않으며, 상단 블록, 좌상단 블록, 좌하단 블록, 우상단 블록 중 적어도 하나가 이용될 수 있다. 상기 주변 블록의 우하단 위치(미도시)를 이용하여 CPMV가 유도될 수도 있다. 상기 우하단 위치는, 현재 블록의 위치, 주변 블록의 가용성, 주변 블록의 좌상단, 우상단 또는 좌하단 위치의 가용성 등을 고려하여 선택적으로 이용될 수 있다. 여기서, 현재 블록의 위치는, 소정의 조각 영역의 경계에 접하는지를 의미할 수 있고, 조각 영역은 타일, 슬라이스, 코딩 트리 블록(CTB row, CBT 등) 등을 의미할 수 있다. CPMV 유도시 이용 가능한 주변 블록의 개수는, 1개, 2개, 3개 또는 그 이상일 수 있다. 상기 개수는, 부호화기/복호화기에 기-정의된 개수일 수 있고, 현재 블록의 코너 위치에 관계없이 동일한 개수일 수도 있으며, 코너 위치 별로 상이하게 정의될 수도 있다.
상기 ATMVP는 소정의 순서에 의하여 상기 공간적 주변 블록으로부터 하나 또는 그 이상의 움직임 정보를 받아 현재 블록을 부-블록 단위로 화면 간 예측 정보를 유도할 수 있다.
공간적 주변 블록으로부터 처음 존재하는 움직임 정보를 현재 블록의 부-블록 단위 움직임 정보로 사용할 수 있다. 상기 움직임 정보는 이전에 부/복호화가 진행된 픽처에서 현재 블록과 corresponding한 블록의 부-블록 단위로 존재하는 움직임 정보일 수 있다.
참조 블록의 부-블록 단위에 대해 움직임 정보가 존재하지 않는 경우, 도 6과 같이 이전 픽쳐의 중간 위치에 존재하는 부-블록의 움직임 정보로 현재 블록의 부-블록을 대체할 수 있다.
상기 Affine은 주변 블록 내에 존재하는 부-블록의 움직임 벡터들(CPMV)을 이용해 현재 블록의 부-블록 단위 움직임 벡터들(CPMV)을 유도할 수 있다. 상기 유도된 CPMV를 이용해 현재 블록을 부-블록 단위 움직임 정보를 유도할 수 있다.
예를 들어, 도 7의 주변 블록의 좌상단, 우상단 CPMV를 이용해 현재 블록의 좌상단, 우상단 CPMV를 생성할 수 있다.
예를 들어, 도 7의 주변 블록의 좌상단, 좌하단, 우상단 CPMV로 이용해 현재 블록의 좌상단, 우상단, 좌하단 CPMV를 성성할 수 있다.
현재 블록의 좌상단, 우상단 혹은 좌하단 위치에 인접한 주변 블록의 움직임 정보를 CPMV로 사용할 수 있다. 상기 CPMV를 이용해 현재 블록의 부-블록 단위 움직임 정보를 유도할 수 있다.
예를 들어, 도 5의 각 {A, B, C} 위치, {D,E} 위치, {F,G} 위치에 존재하는 움직임 정보들을 CPMV로 사용하여 현재 블록의 부-블록 단위 움직임 정보를 유도할 수 있다.
상기 STMVP는 현재 블록을 부-블록 단위의 주변 공간적 주변 블록, 시간적 주변 블록의 화면 간 예측 정보의 결합으로 유도할 수 있다. 상기 결합은, 중간값, 평균값, 최소/최대값 등의 연산에 기반하여 수행될 수 있다.
현재 블록 내에 이전에 유도된 부-블록의 움직임 정보를 이용해 현재 부-블록 움직임 정보를 유도하는데 사용할 수 있다.
상기 HMVP는 이전에 부호화 된 블록들의 움직임 정보를 후보로 구성하여 현재 블록의 움직임 정보를 유도하는데 사용할 수 있다.
도 8과 같이 이전 부호화된 블록들의 움직임 정보를 저장하여 제1 후보 리스트를 구성할 수 있다. 현재 블록의 화면 간 예측 후보 리스트를 구성함에 있어, 상기 제1 후보 리스트의 하나 이상의 움직임 정보를 사용할 수 있다. 제1 후보 리스트는 a개의 이전 부호화된 블록의 움직임 정보로 구성될 수 있다. 여기서, a는 1, 2, 3, 4, 5, 6 또는 그 이상의 자연수일 수 있다. a는 부호화기/복호화기에 기-약속된 문턱값보다는 작거나 같을 수 있다. 이전 부호화된 블록은, 현재 블록에 인접하지 않은 블록을 포함할 수 있다. a는, 부호화기에서 시그날링되는 정보(e.g., a 값을 특정하는 개수 정보)에 기초하여 결정될 수도 있고, 부호화기/복호화기에 기-약속된 고정된 값일 수도 있다.
예를 들어, 제1 후보 리스트의 움직임 정보를 머지 후보 리스트에 사용할 수 있다. 예를 들어, 제1 후보 리스트의 움직임 정보를 AMVP 후보 리스트에 사용할 수 있다.
현재 블록의 화면 간 예측 모드가 최종적으로 결정된 후, 상기 예측 모드를 상기 제1 후보 리스트에 추가할 수 있다.
현재 블록의 화면 간 예측 모드가 Merge 모드로 결정된 경우, Merge 후보 리스트를 구성할 수 있다. 상기 Merge 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
상기 Merge 후보 리스트는 공간적 주변 블록의 화면 간 예측 정보, 시간적 주변 블록의 화면 간 예측 정보, HMVP, 합성 화면 간 예측 정보, STMVP, ATMVP, 제로 움직임 정보 중 적어도 하나 이상을 이용하여 구성될 수 있다.
N개의 후보는 예를 들어 5개 혹은 5개 이상의 리스트로 구성될 수 있다.
공간적 주변 블록의 화면 간 예측 정보는 도 9에서 A, B, …… , J, K 위치에 존재하는 블록의 화면 간 예측 정보를 의미한다. 이때, 주변 블록의 크기는 MxN의 크기를 가질 수 있고, M 또는 N 은 각각 4, 8, 16, 32, 64, 128 중 적어도 하나일 수 있다. 상기 크기는 기-약속된 고정된 값이거나 전술한 부호화 파라미터에 의해 가변적으로 결정될 수 있다.
예를 들어, 주변 블록의 움직임 정보를 유도할 때, 도 9의 B, J, K, A, F 위치 블록 순으로 유도할 수 있다.
시간적 주변 블록의 화면 간 예측 정보는 도 10에서의 a, b, c, d, e, f, g, h 중 적어도 하나의 위치의 이전에 부/복호화가 진행된 픽처의 블록에 존재하는 화면 간 예측 정보를 의미한다.
HMVP는 전술한 바와 같으며, 여기서 자세한 설명은 생략하기로 한다.
ATMVP는 이전에 부/복호화가 진행된 픽처에서 현재 블록과 corresponding한 블록의 부-블록 단위 화면 간 예측 정보를 사용할 수 있다. 상기 corresponding한 블록을 찾기 위해 소정의 순서에 따라 공간적 주변 블록으로부터 처음 존재하는 움직임 정보를 사용할 수 있다.
예를 들어, 주변 블록의 움직임 정보를 유도할 때, 도 9의 B, J, K, A 위치 블록 순으로 수색하며, 처음 움직임 정보가 존재하는 주변 블록의 움직임 정보를 이용할 수 있다.
예를 들어, 공간적 주변 블록을 통해 유도한 블록 단위 Merge 후보 리스트의 첫 번째 후보의 움직임 정보를 이용할 수 있다.
STMVP는 현재 블록을 부-블록 단위로 공간적 주변 블록 혹은 시간적 주변 블록의 화면 간 예측 정보를 결합하여 생성한 부-블록 단위 화면 간 예측 정보를 의미한다.
합성 화면 간 예측 정보는 Merge 후보 리스트 내에 존재하는 후보 중 하나 이상을 결합하여 유도할 수 있다. 합성 화면 간 예측 정보의 움직임 벡터는 양의 정수 N개의 움직임 벡터의 조합으로 구할 수 있다.
결합 화면 간 예측 정보는 Merge 후보 리스트 내에 존재하는 머지 후보 중 적어도 하나를 이용하여 유도될 수 있으며, 이하, 결합 머지 후보라 한다.
머지 후보 리스트는, 결합 머지 후보를 더 포함할 수 있다. 결합 머지 후보는, 기-생성된 머지 후보 리스트에 속한 n개의 머지 후보를 결합결합하여 유도될 수 있다.
여기서, n은 2, 3, 4 또는 그 이상의 정수일 수 있다. 결합 대상인 머지 후보의 개수(n)는 부호화/복호화 장치에 기-약속된 고정된 값일 수도 있고, 부호화 장치에서 부호화되어 시그날링될 수도 있다. 상기 시그날링은, 시퀀스, 픽쳐, 슬라이스, 타일, 서브-타일(브릭, brick) 또는 소정의 블록 중 적어도 하나의 단위에서 수행될 수 있다. 결합 대상인 머지 후보의 개수(n)는, 잔여 머지 후보의 개수에 기반하여 가변적으로 결정될 수도 있다. 여기서, 잔여 머지 후보의 개수는, 머지 후보 리스트에 포함 가능한 머지 후보의 최대 개수와 머지 후보 리스트에 속한 머지 후보의 현재 개수 간의 차이를 의미할 수 있다. 상기 최대 개수는 부호화/복호화 장치에 기-약속된 개수이거나, 부호하 장치에서 부호화되어 시그날링될 수 있다. 상기 현재 개수는, 결합 머지 후보를 추가하기 전까지 구성된 머지 후보의 개수를 의미할 수 있다. 예를 들어, 잔여 머지 후보의 개수가 1인 경우, 2개의 머지 후보가 이용되고, 잔여 머지 후보의 개수가 1보다 큰 경우, 3개 또는 그 이상의 머지 후보가 이용될 수 있다.
상기 n개의 머지 후보의 위치는, 머지 후보 리스트에서 기-결정된 위치일 수 있다. 예를 들어, 머지 후보 리스트에 속한 머지 후보 별로 인덱스(0 내지 (k-1))가 할당될 수 있다. 여기서, k는 머지 후보 리스트에 속한 머지 후보의 총 개수를 의미할 수 있다. 이때, n개의 머지 후보의 위치는, 머지 후보 리스트에서 인덱스 0 내지 인덱스 (n-1)에 대응될 수 있다. 또는, 상기 n개의 머지 후보는, 머지 후보 리스트에 속한 각 머지 후보의 예측 방향을 고려하여 결정될 수 있다. 예를 들어, 머지 후보 리스트에 속한 머지 후보 중에서, 양방향 예측인 머지 후보만을 선택적으로 이용하거나, 단방향 예측인 머지 후보만을 선택적으로 이용할 수 있다.
결합 머지 후보는, 공간적 머지 후보와 시간적 머지 후보를 모두 이용하여 유도될 수도 있고, 공간적 머지 후보 또는 시간적 머지 후보 중 어느 하나만을 이용하여 유도될 수도 있다. 예를 들어, 결합 머지 후보는 공간적 머지 후보만을 이용하여 유도되도록 제한될 수 있다. 이 경우, 결합 대상인 머지 후보의 개수는 기-생성된 머지 후보 리스트에 속한 공간적 머지 후보의 개수 내로 제한될 수 있다.
상기 결합 머지 후보는, 머지 후보 리스트에서 공간적/시간적 머지 후보 이후에 추가될 수 있다. 즉, 결합 머지 후보의 인덱스는 공간적/시간적 머지 후보의 인덱스보다 클 수 있다. 또는, 상기 결합 머지 후보는, 머지 후보 리스트에서 공간적 머지 후보와 시간적 머지 후보 사이에 추가될 수도 있다. 즉, 결합 머지 후보의 인덱스는 공간적 머지 후보의 인덱스보다 크고, 시간적 머지 후보의 인덱스보다 작을 수 있다. 또는, 결합 머지 후보의 위치는, 결합 머지 후보의 예측 방향을 고려하여 가변적으로 결정될 수도 있다. 결합 머지 후보의 예측 방향이 양방향 예측인지 여부에 따라, 머지 후보 리스트 내에서 결합 머지 후보의 위치가 재배열될 수 있다. 예를 들어, 결합 머지 후보가 양방향 예측인 경우, 공간적 또는 시간적 머지 후보보다 작은 인덱스가 할당될 수 있고, 그렇지 않은 경우, 공간적 또는 시간적 머지 후보보다 큰 인덱스가 할당될 수 있다.
이하, 설명의 편의를 위해 2개의 머지 후보를 기반으로 결합 머지 후보를 유도하는 방법을 살펴보기로 한다.
결합 머지 후보의 모션 정보는, 제1 머지 후보와 제2 머지 후보의 모션 정보를 가중 평균하여 유도될 수 있다. 여기서, 가중 평균의 가중치는 [1:1], [1:2], [1:3], [2:3] 등이나, 이에 한정되지 아니한다. 상기 가중치는, 부호화/복호화 장치에 기-정의된 것일 수도 있고, 복호화 장치에서 유도될 수도 있다. 이때, 가중치는, 현재 픽쳐와 머지 후보의 참조 픽쳐 간의 거리 또는 머지 후보의 예측 방향 중 적어도 하나를 고려하여 유도될 수 있다. 또는, 결합 머지 후보의 모션 정보는, 제1 머지 후보로부터 L0 방향의 모션 정보를, 제2 머지 후보로부터 L1 방향의 모션 정보를 각각 획득하고, 이를 결합하여 유도될 수 있다. 전술한 유도 방법 중 적어도 하나에 기반하여 결합 머지 후보의 모션 정보가 유도될 수 있으며, 이는 후술하는 바와 같이 결합 대상인 머지 후보의 예측 방향을 고려하여 수행될 수 있다.
본 명세서에서, 모션 정보는, 예측 방향 플래그, 참조 픽쳐 인덱스 또는 모션 벡터 중 적어도 하나를 포함할 수 있다. 상기 모션 정보는, L0 예측과 L1 예측에 대해서 각가 정의될 수 있다. 여기서, L0 예측은 참조 픽쳐 리스트 L0를 참조하는 예측을 의미하고, L1 예측은 참조 픽쳐 리스트 L1을 참조하는 예측을 의미할 수 있다.
1. 제1 머지 후보와 제2 머지 후보 둘다 단방향 예측인 경우
(CASE 1) 제1 머지 후보가 L0 예측이고, 제2 머지 후보가 L1 예측인 경우, 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스는, 제1 머지 후보의 참조 픽쳐 인덱스로 유도될 수 있다. 결합 머지 후보의 L0 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L0 방향의 모션 벡터는 제1 머지 후보의 모션 벡터로 유도될 수 있다. 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스는, 제2 머지 후보의 참조 픽쳐 인덱스로 유도될 수 있다. 결합 머지 후보의 L1 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L1 방향의 모션 벡터는 제2 머지 후보의 모션 벡터로 유도될 수 있다.
(CASE 2) 제1 머지 후보가 L1 예측이고, 제2 머지 후보가 L0 예측인 경우, 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스는, 제2 머지 후보의 참조 픽쳐 인덱스로 유도될 수 있다. 결합 머지 후보의 L0 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L0 방향의 모션 벡터는 제2 머지 후보의 모션 벡터로 유도될 수 있다. 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스는, 제1 머지 후보의 참조 픽쳐 인덱스로 유도될 수 있다. 결합 머지 후보의 L1 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L1 방향의 모션 벡터는 제1 머지 후보의 모션 벡터로 유도될 수 있다.
(CASE 3) 제1 머지 후보 및 제2 머지 후보가 L0 예측인 경우, 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스는, 제1 머지 후보 또는 제2 머지 후보 중 어느 하나의 참조 픽쳐 인덱스로 유도될 수 있다. 예를 들어, 제1 머지 후보 및 제2 머지 후보 중 인덱스가 가장 작은 머지 후보의 참조 픽쳐 인덱스가 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스로 설정될 수 있다. 결합 머지 후보의 L0 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L0 방향의 모션 벡터는 제1 머지 후보의 모션 벡터와 제2 머지 후보의 가중 평균으로 유도될 수 있다. 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스는 -1로 유도되고, L1 방향의 예측 방향 플래그는 0으로 유도되며, L1 방향의 모션 정보는 0으로 유도될 수 있다.
(CASE 4) 제1 머지 후보 및 제2 머지 후보가 L1 예측인 경우, 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스는 -1로 유도되고, L0 방향의 예측 방향 플래그는 0으로 유도되며, L0 방향의 모션 정보는 0으로 유도될 수 있다. 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스는, 제1 머지 후보 또는 제2 머지 후보 중 어느 하나의 참조 픽쳐 인덱스로 유도될 수 있다. 예를 들어, 제1 머지 후보 및 제2 머지 후보 중 인덱스가 가장 작은 머지 후보의 참조 픽쳐 인덱스가 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스로 설정될 수 있다. 결합 머지 후보의 L1 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L1 방향의 모션 벡터는 제1 머지 후보의 모션 벡터와 제2 머지 후보의 가중 평균으로 유도될 수 있다.
2. 제1 머지 후보와 제2 머지 후보 둘다 양방향 예측인 경우
(CASE 5) 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스는, 제1 머지 후보 또는 제2 머지 후보 중 어느 하나의 참조 픽쳐 인덱스로 유도될 수 있다. 예를 들어, 제1 머지 후보 및 제2 머지 후보 중 인덱스가 가장 작은 머지 후보의 참조 픽쳐 인덱스가 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스로 설정될 수 있다. 결합 머지 후보의 L0 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L0 방향의 모션 벡터는 제1 머지 후보의 모션 벡터와 제2 머지 후보의 가중 평균으로 유도될 수 있다. 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스는, 제1 머지 후보 또는 제2 머지 후보 중 어느 하나의 참조 픽쳐 인덱스로 유도될 수 있다. 예를 들어, 제1 머지 후보 및 제2 머지 후보 중 인덱스가 가장 작은 머지 후보의 참조 픽쳐 인덱스가 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스로 설정될 수 있다. 결합 머지 후보의 L1 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L1 방향의 모션 벡터는 제1 머지 후보의 모션 벡터와 제2 머지 후보의 가중 평균으로 유도될 수 있다.
3. 제1 머지 후보는 양방향 예측이고, 제2 머지 후보는 단방향 예측인 경우
(CASE 6) 제2 머지 후보가 L0 예측인 경우, 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스는, 제1 머지 후보 또는 제2 머지 후보 중 어느 하나의 참조 픽쳐 인덱스로 유도될 수 있다. 예를 들어, 제1 머지 후보 및 제2 머지 후보 중 인덱스가 가장 작은 머지 후보의 참조 픽쳐 인덱스가 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스로 설정될 수 있다. 결합 머지 후보의 L0 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L0 방향의 모션 벡터는 제1 머지 후보의 모션 벡터와 제2 머지 후보의 가중 평균으로 유도될 수 있다. 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스는, 제1 머지 후보의 참조 픽쳐 인덱스로 유도될 수 있다. 결합 머지 후보의 L1 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L1 방향의 모션 벡터는 제1 머지 후보의 모션 벡터로 유도될 수 있다.
(CASE 7) 제2 머지 후보가 L1 예측인 경우, 결합 머지 후보의 L0 방향의 참조 픽쳐 인덱스는, 제1 머지 후보의 참조 픽쳐 인덱스로 유도될 수 있다. 결합 머지 후보의 L0 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L0 방향의 모션 벡터는 제1 머지 후보의 모션 벡터로 유도될 수 있다. 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스는, 제1 머지 후보 또는 제2 머지 후보 중 어느 하나의 참조 픽쳐 인덱스로 유도될 수 있다. 예를 들어, 제1 머지 후보 및 제2 머지 후보 중 인덱스가 가장 작은 머지 후보의 참조 픽쳐 인덱스가 결합 머지 후보의 L1 방향의 참조 픽쳐 인덱스로 설정될 수 있다. 결합 머지 후보의 L1 방향의 예측 방향 플래그는 1로 유도될 수 있다. 결합 머지 후보의 L1 방향의 모션 벡터는 제1 머지 후보의 모션 벡터와 제2 머지 후보의 가중 평균으로 유도될 수 있다.
제로 움직임 정보는 Merge모드의 (최대) 후보 리스트를 채우지 못했을 경우, 제로 움직임 정보들로 (최대) 후보 리스트를 채울 수 있다.
현재 블록의 화면 간 예측 모드가 Skip 모드로 결정된 경우, Skip 후보 리스트를 구성할 수 있다. 상기 Skip 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
Skip 모드인 경우 후보 리스트 구성 방법은, 상기 Merge 후보 리스트 구성 방법과 동일 할 수 있다.
현재 블록의 화면 간 예측 모드가 AMVP 모드로 결정된 경우, AMVP 후보 리스트를 구성할 수 있다. 상기 AMVP 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
움직임 벡터 또는 참조 픽처 리스트, 참조 방향, 움직임 벡터 difference 중 적어도 하나를 가지는 AMVP 후보 리스트를 구성한다. AMVP 후보 리스트는 공간적 주변 블록의 화면 간 예측 정보, 시간적 주변 블록의 화면 간 예측 정보, 제로 움직임 정보 중 적어도 하나 이상으로 구성된다.
예를 들어, AMVP 후보 리스트는 2개의 혹은 2개 이상의 리스트로 구성될 수 있다.
공간적 주변 블록의 화면 간 예측 정보는 도 9에서 A, B, …… , J, K 위치에 존재하는 블록의 화면 간 예측 정보를 의미한다. 소정의 순서에 의하여 상기 공간적 주변 블록으로 부터 하나 이상의 후보를 유도할 수 있다.
좌측 주변 블록은 A, B, C, D, E 중 하나 이상 위치의 블록일 수 있으며, 소정의 순서에 의하여 상기 화면 간 예측 정보를 유도할 수 있다.
예를 들어, 좌측 주변 블록의 움직임 정보를 유도할 때, 도 9의 A, B 위치 블록 순으로 유도할 수 있다. 또는 B, A 위치의 블록 순으로 유도할 수 있다.
상단 주변 블록은 F, G, H, I, J, K 중 하나 이상의 위치의 블록일 수 있으며, 소정의 순서에 의하여 상기 화면 간 예측 정보를 유도할 수 있다.
예를 들어, 상단 주변 블록의 움직임 정보를 유도할 때, 도 9의 K, J, F 위치 블록 순으로 유도할 수 있다. 또는, J, K, F의 순으로 또는 F, J, K의 순으로 유도할 수도 있다.
상기 소정의 순서에 의하여 유도함에 있어, 현재 순서에 해당하는 주변 블록의 움직임 정보가 비가용한 경우, 다음 순서에 해당하는 블록의 움직임 정보를 이용할 수 있다.
시간적 주변 블록의 화면 간 예측 정보는 도 10에서 현재 픽처보다 이전에 부/복호화가 진행된 픽처에 현재 블록과 동일한 위치의 블록에 존재하는 화면 간 예측 정보를 의미한다. 상기 시간적 주변 블록의 위치는 상기 현재 블록의 우하단, 중간, 소정의 위치 중 적어도 하나의 위치에 대응될 수 있다.
예를 들어, 상기 시간적 주변 블록의 위치는 이전 픽처에 존재하는 블록의 a 혹은 b위치에 대응될 수 있다
예를 들어, 상기 시간적 주변 블록의 위치는 이전 픽처에 존재하는 블록의 c, d, e 위치 중 하나 혹은 다른 이전 픽처에 존재하는 블록의 f, g, h 위치 중 하나로 대응될 수 있다. 또는, 시간적 주변 블록은, 현재 블록에 대응하는 블록의 좌상단 위치(미도시)를 포함하거나, 좌상단 위치에 인접한 블록일 수도 있다.
제로 움직임 정보는 AMVP모드의 (최대) 후보 리스트를 채우지 못했을 경우, 제로 움직임 정보로 후보 리스트를 채울 수 있다.
현재 블록의 화면 간 예측 모드가 부(sub)-블록 단위 Merge 모드로 결정된 경우, 부-블록 단위로 Merge 후보 리스트를 구성할 수 있다. 상기 부-블록 단위의 Merge 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
부-블록 단위 Merge 후보 리스트는 ATMVP, 상속 Affine 화면 간 예측 정보, 조합 Affine 화면 간 예측 정보, 제로 Affine 움직임 예측 정보 중 적어도 하나 이상을 이용하여 구성될 수 있다.
ATMVP는 이전에 부/복호화가 진행된 픽처에서 현재 블록과 corresponding한 블록의 부-블록 단위 화면 간 예측 정보를 사용할 수 있다. 상기 corresponding한 블록을 찾기 위해 소정의 순서에 따라 공간적 주변 블록으로부터 처음 존재하는 움직임 정보를 사용할 수 있다.
예를 들어, 도 11의 A, B, C, D 위치 블록 순으로 탐색하여, 현재 블록과 corresponding한 블록을 찾을 수 있다.
예를 들어, 주변 블록에 모두 움직임 정보가 존재하지 않을 때, 제로 움직임 정보를 이용해 corresponding한 블록을 찾을 수 있다.
상속 Affine 화면 간 예측 정보는 Affine으로 부/복호화된 공간적 주변 블록의 CPMV로부터 현재 블록으로 유도한 CPMV일 수 있다. 상기 공간적 주변 블록의 CPMV는 Affine으로 부/복호화된 블록들의 좌상단, 우상단, 좌하단 또는 우하단 중 적어도 하나의 위치의 부-블록 단위 움직임 벡터일수 있고, 수학식 1과 같이 주변 블록의 CPMV를 현재 블록과 주변 블록의 너비와 높이에 따른 scaling을 통해 현재 블록의 좌상단, 우상단 혹은 좌하단 위치의 부-블록 단위 움직임 벡터(현재 블록의 CPMV)를 유도할 수 있다. 도 12에서 A, B, …… , H, O 위치의 공간적 주변 블록을 탐색할 수 있고, 소정의 순서에 따라 유도된 하나 또는 적어도 두 개 이상의 CPMV 조합 (4-parameter, 6-parameter, …) 으로 구성된 하나 이상의 후보를 유도할 수 있다.
4-parameter는, 현재 블록의 4개의 코너 중 2개 위치에 유도된 부-블록 단위 움직임 벡터 조합일 수 있다. 이때, 현재 블록의 좌상단, 우상단, 좌하단 및 우하단 중 어느 2개가 선택적으로 이용될 수 있다. 다만, 상기 선택된 코너 위치 중 어느 하나가 비가용인 경우, 가용한 다른 코너 위치로 대체될 수 있다. 예를 들어, 상기 두 개의 CPMV 조합(4-parameter)은 현재 블록의 좌상단, 우상단 위치에 유도된 부-블록 단위 움직임 벡터 조합일 수 있다.
6-parameter는, 현재 블록의 4개의 코너 중 3개 위치에 유도된 부-블록 단위 움직임 벡터 조합일 수 있다. 이때, 현재 블록의 좌상단, 우상단, 좌하단 및 우하단 중 어느 3개가 선택적으로 이용될 수 있다. 다만, 상기 선택된 코너 위치 중 어느 하나가 비가용인 경우, 가용한 다른 코너 위치로 대체될 수 있다. 예를 들어, 상기 세 개의 CPMV 조합(6-parameter)은 현재 블록의 좌상단, 우상단, 좌하단 위치에 유도된 부-블록 단위 움직임 벡터 조합일 수 있다.
좌측 주변 블록은 A, B, C, …, F, G 위치의 블록일 수 있으며, 소정의 순서에 의하여 적어도 하나 이상의 화면 간 예측 정보를 유도할 수 있다.
예를 들어, 도 12의 A, B 위치 블록 순으로 적어도 하나 이상의 화면 간 예측 정보를 유도할 수 있다.
상단 주변 블록은 H, I, J, …, N, O 위치의 블록일 수 있으며, 소정의 순서에 의하여 적어도 하나 이상의 화면 간 예측 정보를 유도할 수 있다.
예를 들어, 도 12의 O, N, H 위치 블록 순으로 적어도 하나 이상의 화면 간 예측 정보를 유도할 수 있다. 전술한 순서는 일예에 불과하며, 역순으로도 유도될 수 있다.
조합 Affine 화면 간 예측 정보는 도 12에서의 좌상단(CP1), 우상단(CP2), 좌하단(CP3), 우하단(CP4) 위치에 인접한 주변 블록들의 움직임 벡터 조합일 수 있다. 상기 주변 블록의 움직임 벡터를 CPMV로 사용할 수 있다. 적어도 두 개 이상의 CPMV 조합(4-parameter, 6-parameter, …)으로 구성된 후보를 구성할 수 있다. 상기 CPMV조합으로 사용하는 주변 블록의 움직임 벡터들이 모두 같은 참조 인덱스를 가질 때 후보 리스트에 추가할 수 있다. 상기 주변 블록이 동일한 참조 픽쳐를 가진 경우에 후보 리스트에 추가될 수 있다.
예를 들어, 도 12의 H, I, G 위치 중 처음 존재하는 움직임 벡터를 우상단 CPMV인 CP1으로 사용할 수 있다. 이때, 탐색 순서는, (H, I, G), (H, G, I), (G, I, H), (I, G, H), (G, H, I) 또는 (I, H, G)일 수 있다.
예를 들어, 도 12의 N, O 위치 중 처음 존재하는 움직임 벡터를 우상단 CPMV인 CP2으로 사용할 수 있다. 이때, 탐색 순서는, (N, O) 또는 (O, N)일 수 있다.
예를 들어, 도 12의 B, A위치 중 처음 존재하는 움직임 벡터를 좌하단 CPMV인 CP3으로 사용할 수 있다. 이때, 탐색 순서는, (B, A) 또는 (A, B)일 수 있다.
예를 들어, 도 12의 이전 픽처의 참조 블록 P 위치에 존재하는 움직임 벡터를 우하단 CPMV인 CP4으로 사용할 수 있다.
예를 들어, 상기 4개의 CPMV (CP1, CP2, CP3, CP4)를 {CP1, CP2, CP3}, {CP1, CP2, CP4}, {CP1, CP3, CP4}, {CP2, CP3, CP4}, {CP1, CP2}, {CP1, CP3} 순으로 조합하고, 해당 CP가 모두 같은 참조 인덱스를 가질 때(또는, 동일한 참조 픽쳐를 가질 때), 후보 리스트에 추가할 수 있다.
부-블록 단위 Merge모드의 최대 후보 리스트를 채우지 못했을 경우, 제로 움직임 정보로 후보 리스트를 채울 수 있다.
현재 블록의 화면 간 예측 모드가 부(sub)-블록 단위 Skip 모드로 결정된 경우, 부-블록 단위로 Skip 후보 리스트를 구성할 수 있다. 상기 부-블록 단위의 Skip 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
후보 리스트 구성하는 상세 내용은 부-블록 단위 Merge모드의 내용과 같을 수 있다.
상기 화면 간 예측 모드가 부(sub)-블록 단위 Merge 모드 혹은 부-블록 단위 Skip 모드로 결정된 경우, 상기 부-블록 단위 화면 간 예측 모드의 후보 리스트에 존재하는 Affine 모델의 CPMV를 이용하여 유도할 수 있다. 상기 후보 리스트에 존재하는 Affine 모델의 CPMV를 사용하기 위해 ATMVP를 Affine 모델 예측 이후 후보 리스트에 채울 수 있다.
예를 들어, ATMVP를 조합 Affine 화면 간 예측 정보 이후 후보 리스트에 채울 수 있다.
예를 들어, ATMVP를 상속 Affine 화면 간 예측 정보 이후 후보 리스트에 채울 수 있다.
상속 Affine 화면 간 예측 후보의 CPMV 중 적어도 하나 이상을 ATMVP를 위한 현재 블록의 부-블록 단위 움직임 정보를 유도하는데 사용할 수 있다 .
좌측 주변 블록은 A, B, C, …, F, G 중 하나 이상 위치의 블록일 수 있으며, 소정의 순서에 의하여 상기 화면 간 예측 정보를 유도할 수 있다.
예를 들어, 도 12의 A, B 위치 블록 중 적어도 하나 이상의 상속 Affine 화면 간 예측 정보를 유도할 수 있다. 해당 블록의 좌상단, 우상단 혹은 좌하단 위치의 CPMV중 적어도 하나 이상을 부-블록 단위 움직임 정보를 유도하는데 사용할 수 있다 .
상단 주변 블록은 H, I, J, …, N, O 중 하나 이상의 위치의 블록일 수 있으며, 소정의 순서에 의하여 상기 부-블록 예측 정보를 유도할 수 있다.
예를 들어, 도 12의 O, N, H 위치 블록 중 적어도 하나 이상의 상속 Affine 화면 간 예측 정보를 유도할 수 있다. 해당 블록의 좌상단, 우상단 혹은 좌하단 위치의 CPMV중 적어도 하나 이상을 현재 블록의 부-블록 단위 움직임 정보를 유도하는데 사용할 수 있다 .
조합 Affine 화면 간 예측 정보의 CPMV 중 적어도 하나 이상을 ATMVP를 위한 부-블록 단위 움직임 정보를 유도하는데 사용할 수 있다. 상기 부-블록 단위 움직임 정보는 이전에 부/복호화가 진행된 픽처에서 상기 CPMV만큼 움직인 현재 블록과 corresponding한 블록의 부-블록 단위로 존재하는 움직임 정보일 수 있다.
예를 들어, 좌상단 CP1을 현재 블록의 부-블록 단위 움직임 정보를 유도하는데 사용할 수 있다 .
예를 들어, 우상단 CP2을 현재 블록의 부-블록 단위 움직임 정보를 유도하는데 사용할 수 있다 .
예를 들어, 좌하단 CP3을 현재 블록의 부-블록 단위 움직임 정보를 유도하는데 사용할 수 있다 .
상기 화면 간 예측 모드가 부(sub)-블록 단위 Merge 모드 혹은 부-블록 단위 Skip 모드로 결정된 경우, 상기 부-블록 단위 화면 간 예측 모드의 후보 리스트를 구성하기 위해 하나의 동일한 주변 블록의 탐색 순서를 구성할 수 있다. 상기 동일하게 구성한 탐색 순서에 따라 주변 블록의 움직임 정보 가용 여부를 판단해 ATMVP, 상속 Affine 화면 간 예측 정보, 조합 Affine 화면 간 예측 정보를 유도하는데 사용할 수 있다.
좌측 주변 블록 혹은 상단 주변 블록의 탐색 순서를 동일하게 구성할 수 있다. 움직임 정보 가용 여부를 판단해 좌측 블록에서 적어도 하나 이상의 블록을, 상단 블록에서 적어도 하나 이상의 블록을 부-블록 단위 화면 간 후보를 유도하는데 사용할 수 있다.
예를 들어, 상기 좌측 주변 블록은 도 12의 A, B, C, …, F, G 위치의 블록일 수 있고, 도 12의 A, B, G 혹은 A, B위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
예를 들어, 상기 상단 주변 블록은 도 12의 H, I, J, …, N, O 중 하나 이상의 위치의 블록일 수 있고, 도 12의 O, N, I, H 혹은 O, N, H 위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
좌하단, 우상단, 좌상단 주변 블록 탐색 순서를 동일하게 구성할 수 있다. 움직임 정보 가용 여부를 판단해 좌상단 블록에서 적어도 하나 이상의 블록을, 우상단 블록에서 적어도 하나 이상의 블록을, 좌하단 블록에서 적어도 하나 이상의 블록을 부-블록 단위 화면 간 후보를 유도하는데 사용할 수 있다.
예를 들어, 상기 좌하단 주변 블록은 A, …, D 위치의 블록일 수 있고, 도 12의 A, B, C, D 혹은 A, B, C 혹은 A, B 위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
예를 들어, 상기 우상단 주변 블록은 L, …, O 위치의 블록일 수 있고, 도 12의 O, N, M, L 혹은 O, N, M 위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
예를 들어, 상기 좌상단 주변 블록은 F, G, …, I, J 위치의 블록일 수 있고, 도 12의 H, I, G, J, F혹은 H, I, G위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
현재 블록의 화면 간 예측 모드가 부(sub)-블록 단위 AMVP 모드로 결정된 경우, 부-블록 단위로 AMVP 후보 리스트를 구성할 수 있다. 상기 부-블록 단위의 AMVP 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
부-블록 단위 AMVP 후보 리스트는 상속 Affine 화면 간 예측 정보, 조합 Affine 화면 간 예측 정보, 패딩 Affine 화면 간 예측 정보, 제로 Affine 화면 간 예측 정보 중 적어도 하나 이상으로 구성된다
상속 Affine 화면 간 예측 정보는 Affine으로 부/복호화된 공간적 주변 블록의 움직임 벡터일수 있고, 수학식 1과 같이 주변 블록의 CPMV를 현재 블록과 주변 블록의 너비와 높이에 따른 scaling을 통해 CPMV로부터 현재 블록으로 유도한 CPMVP일 수 있다. 상기 공간적 주변 블록의 CPMV는 Affine으로 부/복호화된 블록들의 좌상단, 우상단, 좌하단 또는 우하단 중 적어도 하나의 위치의 부-블록 단위 움직임 벡터일수 있고, 수학식 1과 같이 주변 블록의 CPMV를 현재 블록과 주변 블록의 너비와 높이에 따른 scaling을 통해 현재 블록의 좌상단, 우상단 혹은 좌하단 위치의 부-블록 단위 움직임 벡터(현재 블록의 CPMVP)를 유도할 수 있다. 도 12에서 A, B, …… , H, O 위치의 공간적 주변 블록을 탐색할 수 있고, 소정의 순서에 따라 유도된 적어도 두 개 이상의 CPMVP 조합 (4-parameter, 6-parameter, …)으로 구성된 하나 이상의 후보를 유도할 수 있다. 상기 CPMVP에 대해 추가적인 탐색을 통해 CPMV를 구할 수 있고, CPMV와 CPMVP의 차분 값을 추가적으로 시그널링 할 수 있다.
예를 들어, 상기 두 개의 CPMVP 조합(4-parameter)은 현재 블록의 좌상단, 우상단 위치에 유도된 부-블록 단위 움직임 벡터 조합일 수 있다.
예를 들어, 상기 세 개의 CPMVP 조합(6-parameter)은 현재 블록의 좌상단, 우상단, 좌하단 위치에 유도된 부-블록 단위 움직임 벡터 조합일 수 있다.
좌측 주변 블록은 A, B, C, …, F, G 위치의 블록일 수 있으며, 소정의 순서에 의하여 적어도 하나 이상의 화면 간 예측 정보를 유도할 수 있다.
예를 들어, 도 12의 A, B 위치 블록 순으로 적어도 하나 이상의 화면 간 예측 정보를 유도할 수 있다.
상단 주변 블록은 H, I, J, …, N, O 위치의 블록일 수 있으며, 소정의 순서에 의하여 적어도 하나 이상의 화면 간 예측 정보를 유도할 수 있다.
예를 들어, 도 12의 O, N, H 위치 블록 순으로 적어도 하나 이상의 화면 간 예측 정보를 유도할 수 있다.
조합 Affine 화면 간 예측 정보는 도 12에서의 좌상단(CP1), 우상단(CP2), 좌하단(CP3) 위치에 인접한 주변 블록들의 움직임 벡터 조합일 수 있다. 상기 주변 블록의 움직임 벡터를 CPMVP로 사용할 수 있다. 적어도 두 개 이상의 CPMV 조합(4-parameter, 6-parameter, …)으로 구성된 후보를 구성할 수 있으며,상기 CPMVP가 모두 존재하고, 모두 같은 참조 인덱스를 가질 때 후보 리스트에 추가할 수 있다. 후보로 추가할 수 있다.
예를 들어, 도 12의 H, I, G 위치에 존재하는 움직임 벡터를 좌상단 CPMVP인 CP1으로 사용할 수 있다.
예를 들어, 도 12의 N, O 위치에 존재하는 움직임 벡터를 우상단 CPMVP인 CP2으로 사용할 수 있다.
예를 들어, 도 12의 B, A위치에 존재하는 움직임 벡터를 좌하단 CPMVP인 CP3으로 사용할 수 있다.
예를 들어, 4-parameter 조합 Affine일 경우, 좌상단(CP1), 우상단(CP2)의 움직임 벡터를 CPMVP 조합으로 사용할 수 있다.
예를 들어, 6-parameter 조합 Affine일 경우, 좌상단(CP1), 우상단(CP2), 좌하단(CP3)의 움직임 벡터를 CPMVP 조합으로 사용할 수 있다.
부-블록 단위 AMVP모드의 최대 후보 리스트를 채우지 못했을 경우, 조합 Affine 화면 간 예측 정보를 위해 사용하는 CPMVP를 패딩 Affine 움직임 정보로 후보 리스트를 채울 수 있다.
예를 들어, 좌상단 위치의 움직임 벡터 CP1을 좌상단, 우상단, 좌하단 CPMVP로 저장하여 후보로 구성할 수 있다.
예를 들어, 우상단 위치의 움직임 벡터 CP2을 좌상단, 우상단, 좌하단 CPMVP로 저장하여 후보로 구성할 수 있다.
예를 들어, 좌하단 위치의 움직임 벡터 CP3을 좌상단, 우상단, 좌하단 CPMVP로 저장하여 후보로 구성할 수 있다.
부-블록 단위 AMVP모드의 최대 후보 리스트를 채우지 못했을 경우, 제로 움직임 정보로 후보 리스트를 채울 수 있다.
상기 화면 간 예측 모드가 부(sub)-블록 단위 AMVP모드로 결정된 경우, 상기 부-블록 단위 화면 간 예측 모드의 후보 리스트를 구성하기 위해 하나의 동일한 주변 블록의 탐색 순서를 구성할 수 있다. 상기 동일하게 구성한 탐색 순서에 따라 주변 블록의 움직임 정보 가용 여부를 판단해 상속 Affine 화면 간 예측 정보, 조합 Affine 화면 간 예측 정보, 패딩 Affine 화면 간 예측 정보를 유도하는데 사용할 수 있다.
좌측 주변 블록, 상단 주변 블록의 탐색 순서를 동일하게 구성할 수 있다. 움직임 정보 가용 여부를 판단해 좌측 블록에서 적어도 하나 이상의 블록을, 상단 블록에서 적어도 하나 이상의 블록을 부-블록 단위 화면 간 후보를 유도하는데 사용할 수 있다.
예를 들어, 상기 좌측 주변 블록은 도 12의 A, B, C, …, F, G 위치의 블록일 수 있고, 도 12의 A, B, G 혹은 A, B위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
예를 들어, 상기 상단 주변 블록은 도 12의 H, I, J, …, N, O 중 하나 이상의 위치의 블록일 수 있고, 도 12의 O, N, I, H 혹은 O, N, H 위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
좌하단, 우상단, 좌상단 주변 블록 탐색 순서를 동일하게 구성할 수 있다. 움직임 정보 가용 여부를 판단해 좌상단 블록에서 적어도 하나 이상의 블록을, 우상단 블록에서 적어도 하나 이상의 블록을, 좌하단 블록에서 적어도 하나 이상의 블록을 부-블록 단위 화면 간 후보를 유도하는데 사용할 수 있다.
예를 들어, 상기 좌하단 주변 블록은 A, …, D 위치의 블록일 수 있고, 도 12의 A, B, C, D 혹은 A, B, C 혹은 A, B 위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
예를 들어, 상기 우상단 주변 블록은 L, …, O 위치의 블록일 수 있고, 도 12의 O, N, M, L 혹은 O, N, M 위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
예를 들어, 상기 좌상단 주변 블록은 F, G,.., I, J 위치의 블록일 수 있고, 도 12의 H, I, G, J, F혹은 H, I, G위치 블록 순서로 탐색 순서를 구성하여 적어도 하나 이상의 블록을 부-블록 화면 간 예측 정보를 유도하는데 사용할 수 있다.
현재 블록의 화면 간 예측 모드가 MMVD 모드로 결정된 경우, MMVD 후보 리스트를 구성할 수 있다. 상기 MMVD 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
MMVD 후보 리스트는 공간적 주변 블록 화면 간 예측정보, 시간적 주변 블록 화면 간 예측정보, HMVP 중 적어도 하나 이상으로 구성된다.
MMVD 후보는 예를 들어 2개 혹은 2개 이상의 리스트로 구성될 수 있다.
예를 들어, 주변 블록의 공간적 움직임 정보를 유도할 때, 도 9의 B, J, K, A, F 위치 블록 순으로 유도할 수 있다.
예를 들어, 상기 시간적 주변 블록의 위치는 도 10의 이전 픽처에 존재하는 블록의 a 혹은 b위치에 대응될 수 있다
MMVD 후보와 추가적인 움직임 방향 정보, 움직임 크기 정보를 결합하여 현재 블록을 예측할 수 있다.
예를 들어, 도 13와 같이 후보의 움직임 벡터에 대해 상, 하 ,좌, 우의 추가적인 움직임 방향 정보를 시그널링 할 수 있다.
예를 들어, 후보의 움직임 벡터에 추가적으로 [ ¼, ½, 1, 2, 4, 8, 16, 32 ]의 크기를 시그널링 할 수 있다.
현재 블록의 화면 간 예측 모드가 MH Intra 모드로 결정된 경우, MH Intra 후보 리스트를 구성할 수 있다. 상기 MH Intra 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
상기 MH Intra 모드는 Combined Inter-Intra Prediction (CIIP) 모드와 동일한 모드일 수 있다.
MH Intra 후보 리스트는 공간적 주변 블록 화면 간 예측정보, 시간적 주변 블록 화면 간 예측정보, HMVP 중 적어도 하나 이상으로 구성된다.
예를 들어, 머지 모드의 후보 리스트를 MH Intra 후보 리스트로 사용할 수 있다.
현재 블록의 화면 간 예측 모드가 Triangular 모드로 결정된 경우, Triangular 후보 리스트를 구성할 수 있다. 상기 Triangular 후보 리스트는 N개의 화면 간 예측 정보로 구성될 수 있다.
Triangular 후보 리스트는 공간적 주변 블록 화면 간 예측정보, 시간적 주변 블록 화면 간 예측정보 중 적어도 하나 이상으로 구성된다.
주변 블록을 소정의 순서에 따라 탐색하여, 단방향으로 움직임 정보를 이용하는 후보 리스트를 구성할 수 있다.
예를 들어, 도 14와 같이 {A,B,C,D,E} 위치의 공간적 주변 블록의 움직임 정보를 후보로 사용할 수 있다.
예를 들어, 도 14와 같이 {F,G} 위치의 시간적주변 블록의 움직임 정보를 후보로 사용할 수 있다.
구성된 후보 리스트의 움직임 조합을 대각선 방향으로 조합하여 현재 블록의 움직임 정보를 예측할 수 있다.
예를 들어, 도 15와 같이 45도 대각선 방향으로 두 개 이상의 움직임 정보를 조합할 수 있다.
예를 들어, 도 15와 같이 135도 대각선 방향으로 두 개 이상의 움직임 정보를 조합할 수 있다.
화면 간 예측 및 움직임 보상/보정 단계(S420); 현재 블록에 대한 화면 간 예측에서 움직임 보상, 밝기 보상(IC), OBMC (Overlapped block motion compensation) , BIO (Bi-directional optical flow), Affine 공간 움직임 예측 및 보상, 복호화기상에서의 움직임 벡터 보정 중 적어도 하나를 이용하여 화면 간 예측 및 움직임 보상/보정을 할 수 있다.
현재 블록의 화면 간 예측 및 움직임 보상/보정에 있어 움직임 보상을 할 수 있다.
전술한 후보 리스트는 하나 또는 이상의 화면 간 예측 후보를 포함할 수 있고, 복수의 화면 간 예측 후보 중 어느 하나를 선택할 수 있다. 상기 선택은, 시그날링되는 플래그 또는 인덱스에 기초하여 수행될 수 있다. 선택된 화면 간 예측 후보의 화면 간 예측 정보가 현재 블록의 화면 간 예측 정보로 설정될 수 있다. 상기 설정된 화면 간 예측 정보(움직임 벡터, 참조 픽처 리스트, 참조 픽처 인덱스 중 적어도 하나)를 이용하여 현재 블록에 대한 예측 블록을 생성한다.
움직임 보상에 있어 단방향 움직임 정보 보상을 할 수 있다.
예를 들어, 1개의 참조 픽처 리스트 L0의 한 픽처 안의 블록으로 움직임 보상을 할 수 있다.
예를 들어, 1개의 참조 픽처 리스트 L0의 한 픽처 안의 두 개 이상의 블록을 혼합하여 움직임 보상을 할 수 있다.
예를 들어, 1개의 참조 픽처 리스트 L0의 두 개 이상의 픽처 안의 두 개 이상의 블록을 혼합하여 움직임 보상을 할 수 있다.
예를 들어, 1개의 참조 픽처 리스트 L1의 한 픽처 안의 블록으로 움직임 보상을 할 수 있다.
예를 들어, 1개의 참조 픽처 리스트 L1의 한 픽처 안의 두 개 이상의 블록을 혼합하여 움직임 보상을 할 수 있다.
예를 들어, 1개의 참조 픽처 리스트 L1의 두 개 이상의 픽처 안의 두 개 이상의 블록을 혼합하여 움직임 보상을 할 수 있다.
움직임 보상에 있어 양방향 움직임 정보 보상을 할 수 있다.
예를 들어, 2개의 참조 픽처 리스트 L0, L1의 각각 한 개의 블록을 혼합하여 움직임 보상할 수 있다.
예를 들어, 2개의 참조 픽처 리스트 L0, L1의 각각 두 개 이상의 블록을 혼합하여 움직임 보상할 수 있다.
예를 들어, 2개의 참조 픽처 리스트 L0, L1마다 두 개 이상의 픽처 안의 각각 두개 이상의 블록을 혼합하여 움직임 보상할 수 있다.
현재 블록의 화면 간 예측 및 움직임 보상/보정에 있어 밝기 보상을 할 수 있다.
상기 움직임 보상에 있어 움직임 보상에 사용하는 블록이 존재하는 참조 픽처와 현재 블록이 존재하는 참조 픽처의 밝기/조명 변화를 보상할 수 있다.
예를 들어, 현재 블록의 주변 샘플과 참조 블록의 주변 샘플의 변화를 임의의 정수 N개 이상의 선형 모델로 근사화하고 상기 선형 모델을 움직임 보상된 블록에 적용하여 밝기 보상을 할 수 있다. 상기 선형 모델은, 가중치 또는 오프셋 중 적어도 하나로 정의될 수 있다.
현재 블록의 화면 간 예측 및 움직임 보상/보정에 있어 OBMC (Overlapped block motion compensation) 할 수 있다.
현재 블록에서 현재 블록의 화면 간 예측 정보로 보상한 블록과 현재 블록 주변 블록 중 적어도 하나 이상의 블록의 화면 간 예측 정보로 보상한 하나 이상의 블록을 혼합하여 예측 블록을 생성할 수 있다.
예를 들어, 현재 블록을 중심으로 좌, 우의 블록을 혼합하여 예측 블록을 생성할 수 있다.
예를 들어, 현재 블록을 중심으로 상, 하, 좌, 우의 블록을 혼합하여 예측 블록을 생성할 수 있다.
예를 들어, 현재 블록을 중심으로 주변 블록 중 하나를 혼합하여 예측 블록을 생성할 수 있다.
도 16과 같이 현재 블록에서 현재 블록의 부-블록 단위의 화면 간 예측 정보로 보상한 블록과 해당 부-블록의 좌, 우, 상, 하 위치의 부-블록 중 적어도 하나 이상의 블록의 화면 간 예측 정보로 보상한 하나 이상의 블록을 혼합하여 예측 블록을 생성할 수 있다.
예를 들어, 현재 블록 내부 경계 위치에 존재하는 부-블록만 수행할 수 있다.
예를 들어, 현재 블록 내부 모든 부-블록에 수행될 수 있다.
예를 들어, 현재 블록 내부 좌측 경계 위치에 존재하는 부-블록만 수행할 수 있다.
예를 들어, 현재 블록 내부 우측 경계 위치에 존재하는 부-블록만 수행할 수 있다. 예를 들어, 현재 블록 내부 상단 또는 하단 중 적어도 하나의 경계 위치에 존재하는 부-블록만 수행할 수 있다.
현재 블록의 화면 간 예측 및 움직임 보상/보정에 있어 BIO (Bi-directional optical flow)할 수 있다.
현재 블록의 움직임 벡터를 단방향 위치의 블록의 Optical flow로 구할 수 있다.
현재 블록의 움직임 벡터를 디스플레이 순서상 현재 픽처의 이전 픽처와 이후 픽처에 존재하는 블록을 이용한 양방향 Optical flow로 구할 수 있다.
상기 이전, 이후 픽처에 존재하는 블록은 서로 반대의 움직임을 가지는 현재 픽처와 유사한 블록일 수 있다.
MH Intra 모드의 경우, MH Intra 후보 리스트 내 후보의 화면 간 예측 정보로 움직임 보상된 예측 블록(이하, 제1 예측 블록)을 화면 내 예측 모드를 이용하여 보정할 수 있다. 구체적으로, 제1 예측 블록을 화면 내 예측 모드로 생성된 예측 블록(이하, 제2 예측 블록)을 이용하여 보정함으로써, 보정된 예측 블록(이하, 제3 예측 블록)을 생성할 수 있다.
상기 MH Intra 모드는 Combined Inter-Intra Prediction (CIIP) 모드와 동일한 모드일 수 있다.
상기 화면 내 예측 모드는 전술한 바와 같이 MPM 후보에 기반하여 유도되거나, 부호화/복호화 장치에 기-정의된 화면 내 예측 모드일 수 있다. 여기서, 기-정의된 화면 내 예측 모드는, 방향성 또는 비방향성 모드일 수 있다. 예를 들면, 부호화/복호화 장치에서 화면 내 예측 모드는 Planar 모드, DC 모드, 수직 모드, 또는 수평 모드 중 어느 하나로 고정되어 있을 수 있다.
일 예로, MH Intra 모드의 경우, 현재 블록의 화면 내 예측 모드는 Planar 모드로 설정되고, Planar 모드로 생성된 제2 예측 블록을 이용하여 제1 예측 블록을 보정할 수 있다. 다만, 이에 한정되지 아니하며, 주변 참조 픽셀들의 평균값을 가지는 화면 내 예측 모드를 이용하거나, 수평 모드 혹은 수직 모드를 가지는 화면 내 예측 모드를 이용할 수도 있다.
제2 예측 블록을 이용하여 제1 예측 블록을 보정하여 제3 예측 블록을 생성하는 것은, 제1 및 제2 예측 블록의 샘플 각각에 가중치를 곱하여 수행될 수 있다. 일 예로, 아래 수학식 2에 의해 수행될 수 있다.
Figure pat00002
여기서, CU_PredSamp는 현재 블록의 보정된 예측 블록(제3 예측 블록)의 샘플, 1st_Predsamp는 제1 예측 블록의 샘플, 2rd_Predsamp는 제2 예측 블록의 샘플, offset은 오프셋, w는 가중치이고, x,y는 직교 좌표계의 x좌표 및 y 좌표를 나타내며, x는 0부터 cbWidth(현재 블록의 너비)-1까지, y는 0부터 cbHeight(현재 블록의 높이)-1까지를 나타낼 수 있다.
상기 가중치는 기-약속된 고정된 값이거나, 전술한 부호화 파라미터를 통해 가변적으로 결정되는 값일 수 있다. 구체적으로, 상기 가중치는 주변 블록의 가용성 및 예측 모드를 고려하여 수행될 수 있다. 주변 블록은 상단 블록 또는 좌측 블록 중 적어도 하나를 의미할 수 있다. 현재 블록의 상단에 복수의 블록이 존재하는 경우, 최우측 또는 최좌측 블록이 상단 블록으로 이용될 수 있다. 현재 블록의 좌측에 복수의 블록이 존재하는 경우, 최하단 또는 최상단 블록이 좌측 블록으로 이용될 수 있다.
예를 들면, 주변 블록의 예측 모드가 화면 내 예측 모드이고, 주변 블록의 가용성이 모두 인정될 경우, 가중치(w)는 1로 설정될 수 있다. 주변 블록의 예측 모드 전부 화면 내 예측 모드가 아닌 경우, 가중치는 3으로 설정될 수 있다. 주변 블록의 가용성이 인정되지 않는 경우, 가중치는 2로 설정될 수 있다.
상기 오프셋은 0, 1, 2, 3 또는 그 이상의 자연수를 가질 수 있다. 이는 기-약속된 고정된 값이거나 전술한 부호화 파라미터에 의해 가변적으로 결정될 수 있다. 일 예로 상기 오프셋은 2로 고정될 수 있다.
상기 MH Intra 모드에 따른 보정은, 전술한 MH Intra 플래그에 기초하여 선택적으로 수행될 수 있다. 상기 MH Intra_플래그는 0, 1 또는 그 이상의 값을 가질 수 있다.
구체적으로, 상기 MH Intra_플래그가 제1 값(예를 들면, 1)인 경우, MH Intra 모드가 사용되나, 제2 값(예를 들면, 0)인 경우 MH Intra 모드가 사용되지 않음을 나타낸다.
상기 MH Intra 플래그는 슬라이스 타입, 스킵 모드의 사용 여부, 현재블록의 너비와 높이 중 적어도 하나에 기초하여 부호화 장치에서 부호화되어 시그날링될 수 있다.
예를 들면, 상기 MH Intra 플래그는 슬라이스 타입이 B slice인 경우만 시그날링 될 수 있다. 예를 들면, 상기 MH Intra 플래그는 스킵 모드가 적용되지 않는 경우에만 시그날링 될 수 있다. 예를 들면, 상기 MH Intra 플래그는 현재 블록의 너비 및 높이가 각각 소정의 제1 임계값보다 작은 경우에만 시그날링될 수 있다. 여기서, 제1 임계값은, 64, 128 또는 그 이상의 정수일 수 있다. 예를 들면, 상기 MH Intra 플래그는 현재 블록의 너비 및 높이의 곱이 소정의 제2 임계값 이상인 경우에만 시그날링될 수 있다. 여기서, 제2 임계값은 32, 64, 128 또는 그 이상의 정수일 수 있다. 다만, 제2 임계값은 제1 임계값보다 작게 설정될 수 있다.
이외에도, 상기 MH Intra 플래그는 상기 예들 중 적어도 2개의 예를 조합한 조건이 만족하는 경우에만 시그날링될 수 있다. 예를 들어, 슬라이스 타입이 B slice이고, 스킵 모드가 적용되지 않으며, 현재 블록의 너비 및 높이의 곱이 64 이상이고, 현재 블록의 너비 및 높이가 각각 128보다 작은 경우에만, 상기 MH Intra 플래그가 시그날링될 수 있다.
MH Intra 플래그가 시그날링되지 않는 경우, MH Intra 플래그 값은 기-설정된 고정된 값(예를 들면, 0 또는 1) 또는 화면 간 예측 모드, 현재 블록의 크기 등을 기초로 가변적인 값을 가질 수 있다. 예를 들면, 화면 간 예측 모드가 부-블록 단위의 예측 모드인 경우 MH Inatra 플래그는 제2 값(예를 들면, 0)으로 설정될 수 있다.
구체적으로, Merge 모드가 적용되는 경우, 부-블록 단위의 예측 모드가 적용되지 않는 경우, Skip 모드가 적용되지 않는 경우, 현재 블록의 너비 및 높이가 128보다 작은 경우, 또는 현재 블록의 너비 및 높이의 곱이 64 이상인 경우 중 적어도 하나의 조건을 만족하는 경우, MH Intra 플래그는 제1 값(예를 들면, 1)으로 설정될 수 있다.
이하, MH Intra 모드의 경우, 화면 내 예측을 기반으로 현재 블록의 제2 예측 블록을 생성하는 방법에 대해서 살펴보기로 한다.
화면 내 예측은, 현재 블록의 예측에 사용될 참조 샘플을 구성하는 단계, 상기 구성된 참조 샘플을 이용하여 화면 내 예측 샘플을 생성하는 단계를 통해 생성될 수 있다.
참조 샘플 구성 단계는, 참조 샘플이 부호화/복호화 대상이 되는 현재 블록의 전술한 주변 블록을 이용하여 구성되는 것을 포함할 수 있다. 여기서, 상기 주변 블록을 이용하는 것은, 상기 주변 블록 내 샘플 전부 또는 일부를 이용하는 것, 또는 상기 주변 블록 내 샘플들의 평균값, 가중 평균값, 대표값, 최빈값, 최소값, 최대값 등을 이용하는 것을 포함할 수 있다. 예를 들면, 대상 블록에 공간적으로 좌측 또는 상단 중 적어도 어느 한 쪽에 인접한 주변 블록 내 샘플 전부를 이용하여 참조 샘플을 구성할 수 있다.
참조 샘플 구성 단계는, 참조 샘플의 가용성 여부 판단 단계, 참조 샘플의 대체 단계 또는 참조 샘플의 필터링 단계 중 적어도 하나를 포함할 수 있다.
참조 샘플의 가용성 여부 판단 단계는, 상기 구성된 참조 샘플들에 대한 가용성 여부를 판단하는 것을 포함할 수 있다. 예를 들어, 참조 샘플을 포함하는 블록이 부호화 혹은 복호화되지 않았거나, 또는 픽처(picture), 슬라이스(slice), 타일(tile), 엔트로피 슬라이스(entropy slice), 웨이브프론트(WPP: Wavefront parallel processing) 등의 경계 밖에 존재하는 경우, 참조 샘플은 사용 불가능한 것으로 결정될 수 있다. 또는, CIP(constrained intra prediction)가 사용된 환경 하에서 참조 샘플을 포함하는 블록이 인터 모드로 부호화된 블록인 경우, 참조 샘플은 사용 불가능한 것으로 결정될 수 있다.
참조 샘플의 대체 단계는, 참조 샘플의 가용성 여부 판단 결과에 따라 참조 샘플을 대체하는 것을 포함할 수 있다. 구체적으로, 상기 구성된 참조 샘플들 중 가용성이 인정되지 않은 샘플 값을 다른 샘플 값으로 대체하는 것을 포함할 수 있다.
상기 다른 샘플 값은, 상기 구성된 참조 샘플들 중 가용성이 인정되는 샘플들 중 어느 하나의 값일 수 있다. 또한, 이는 기-약속된 고정된 값, 전술한 부호화 파라미터에 의해 가변적으로 결정되는 값 (예를 들면, 비트 심도에 의해 가변적으로 결정되는 값)을 포함할 수 있다. 여기서, 상기 가용성이 인정되는 샘플들 중 어느 하나는 상기 가용성이 인정되지 않는 샘플의 상, 하, 좌, 또는 우측에 인접할 수 있다.
참조 샘플의 필터링 단계는, 구성된 참조 화소를 필터링하여 예측의 효율을 높여주는 단계일 수 있다. 상기 필터링은 필터링 대상 샘플을 상기 필터링 대상 샘플 또는 상기 필터링 대상 샘플의 주변 샘플 중 적어도 하나를 이용하여 수행될 수 있다. 상기 필터링은 샘플들의 평균값, 가중 평균값, 최빈값, 최대값, 최소값, 또는 대표값 등에 의해 수행되거나, n탭 필터에 의해 수행될 수 있다. 여기서 n은 1,2,3,4, 또는 그 이상의 자연수를 포함할 수 있으며, 기-약속된 고정된 값이거나 전술한 부호화 파라미터에 의해 가변적으로 결정되는 값일 수 있다. 예를 들면, 상기 필터링은 [1/4, 2/4, 1/4]를 갖는 3탭 필터일 수 있다.
또한, 상기 필터링 단계의 수행 여부는 플래그에 의해 결정될 수 있다. 상기 플래그는 화면 내 예측 모드에 따라 결정될 수 있다. 일 예로 화면 내 예측 모드가 Planar 모드인 경우 필터링이 적용될 수 있다. 또는, 예측 대상 블록의 화면 내 예측 모드에 따른 참조 샘플에 대한 필터링 적용 여부를 테이블화하여 미리 정해둘 수 있다.
또는, 참조 샘플들에 필터링을 적용할 때, 예측 대상 블록의 색 성분(color components)에 따라 참조 샘플에 대한 필터링 적용 여부를 결정할 수 있다. 예를 들어, 색 성분이 휘도(luma) 신호이면 참조 샘플에 대해 필터링을 적용하고, 색 성분이 색차(chroma) 신호이면 참조 샘플에 대해 필터링을 적용하지 않을 수 있다.
화면 내 예측 샘플 생성 단계는, 구성된 참조 샘플을 이용하여 화면 내 예측 샘플을 생성하는 단계일 수 있다. 예측 샘플의 생성 방식은 화면 내 예측 모드에 따라 달라질 수 있다. 여기서, 화면 내 예측 모드는 전술한 것과 같이 비방향성 예측 모드와 방향성 예측 모드로 구분될 수 있다.
비방향성 예측 모드는 DC 모드와 Planar 모드를 포함할 수 있다. DC 모드는 고정된 하나의 값을 예측 대상 블록 내 샘플들의 예측 값으로 이용할 수 있다. 일 예로, DC 모드에서 고정된 하나의 값은 예측 대상 블록의 주변에 위치한 샘플 값들의 평균에 의해 유도될 수 있다. Planar 모드는 예측 대상 블록에 수직으로 인접한 샘플과 수평으로 인접한 샘플을 이용하여 수직 방향 보간 및 수평 방향 보간을 수행하고, 이들의 평균값을 예측 대상 블록 내 샘플들의 예측 값으로 이용할 수 있다.
방향성 예측 모드는 참조 샘플이 위치한 방향을 나타내는 모드로, 예측 대상 블록 내 예측 대상 샘플과 참조 샘플 간의 각도로 해당 방향을 나타낼 수 있다. 방향성 예측 모드는 Angular 모드로 불릴 수 있으며, 수직 모드, 수평 모드 등을 포함할 수 있다. 수직 모드는 예측 대상 블록에 수직 방향으로 인접한 샘플 값을 예측 대상 블록 내 샘플의 예측 값으로 이용할 수 있으며, 수평 모드는 예측 대상 블록에 수평 방향으로 인접한 샘플 값을 예측 대상 블록 내 샘플의 예측 값으로 이용할 수 있다. 그리고, 수직 모드와 수평 모드를 제외한 나머지 Angular 모드는 각각의 모드에 대해 미리 정해진 각도 및/또는 방향에 위치하는 참조 샘플을 이용하여 예측 대상 블록 내 샘플의 예측 값을 도출할 수 있다.
현재 블록의 화면 내 예측 모드가 평면(Planar) 모드인 경우, 현재 블록의 예측 대상 샘플의 예측 값은, 예측 대상 샘플의 위치에 따라 가변적으로 결정되는 제1 참조 샘플과 예측 대상 샘플의 위치와 관계없이 고정된 제2 참조 샘플 중 적어도 하나를 이용하여 유도될 수 있다. 여기서, 상기 제1 참조 샘플은 예측 대상 샘플과 동일한 수평 선상에 위치한 참조 샘플(즉, 예측 대상 샘플과 동일한 x좌표 값을 갖는 참조 샘플) 또는 예측 대상 샘플과 동일한 수직 선상에 위치한 참조 샘플(즉, 타겟 샘플과 동일한 y좌표 값을 갖는 참조 샘플) 중 적어도 하나를 포함할 수 있다. 상기 제2 참조 샘플은 현재 블록의 상단 경계에 인접한 복수의 이웃 샘플들 중 현재 블록의 우측 상단 코너에 인접한 샘플, 현재 블록의 좌측 경계에 인접한 복수의 이웃 샘플들 중 현재 블록의 좌측 하단 코너에 인접한 샘플 또는 현재 블록의 좌측 상단 코너에 인접한 이웃 샘플 중 적어도 하나를 포함할 수 있다.
또한, Planar 모드의 경우, 예측 샘플은 수학식 3를 통해 생성될 수 있다.
Figure pat00003
여기서, p[ x ][ y ]는 참조 샘플, predSamples[ x ][ y ]는 예측 샘플, nTbW와 nTbH는 각각 변환 블록의 너비와 높이, x는 0부터 nTbW-1까지의 x좌표, y는 0부터 nTbH-1까지의 y좌표를 나타낼 수 있다.
구체적으로, PredV는 x의 위치에 따라 가변적으로 결정되는 제1 참조 샘플과 x의 위치와 관계없이 결정되는 현재 블록의 좌측 하단 코너에 인접한 제2 참조 샘플에 가중치를 곱하여 구할 수 있고, PredH는 y의 위치에 따라 가변적으로 결정되는 제1 참조 샘플과 y의 위치와 관계없이 결정되는 현재 블록의 우측 상단 코너에 인접한 제2 참조 샘플에 가중치를 곱하여 구할 수 있다. 예측 샘플(predSamples[ x ][ y ])은, PredV와 PredH의 가중 평균을 통해 유도될 수 있다. 이때, 가중 평균을 위한 가중치는, [1:k] 또는 [k:1]로 표현될 수 있다. k의 절대값은 0, 1, 2, 3, 4 또는 그 이상일 수 있고, k는 양수 또는 음수일 수도 있다.
현재 블록의 화면 간 예측 및 움직임 보상/보정에 있어 Affine 공간 움직임 예측 및 보상할 수 있다.
현재 블록의 좌상단, 우상단 위치의 움직임 벡터를 Affine 변환 식을 이용하여 현재 블록 픽셀 별로의 움직임 벡터를 생성할 수 있고 해당 움직임 벡터를 이용하여 움직임 보상을 할 수 있다.
현재 블록의 좌상단, 우상단 위치의 움직임 벡터를 Affine 변환 식을 이용하여 현재 블록의 부-블록 단위로 움직임 벡터를 생성할 수 있고 해당 움직임 벡터를 이용하여 움직임 보상을 할 수 있다.
현재 블록의 좌상단, 우상단 위치의 움직임 벡터를 전송할 수 있다.
현재 블록의 좌상단, 우상단 위치의 움직임 벡터를 해당 벡터의 주변 움직임 벡터와의 차이만을 전송할 수 있다.
현재 블록의 좌상단, 우상단 위치의 움직임 벡터를 현재 주변 블록의 Affine 움직임 벡터를 이용하여 전송없이 유도할 수 있다.
좌상단, 우상단 위치뿐만 아니라 좌하단의 움직임 벡터를 적응적으로 이용해 Affine 공간 움직임 보상을 할 수 있다.
현재 블록의 좌상단, 우상단 위치의 움직임 벡터를 이용해 좌하단 위치의 움직임 벡터를 이용해 적응적으로 Affine 공간 움직임 보상을 할 수 있다.
현재 블록의 화면 간 예측 및 움직임 보상/보정에 있어 복호화기상에서의 움직임 벡터 보정을 할 수 있다.
현재 블록에서 디코더에 전송된 움직임 벡터를 이용하여 현재 블록의 움직임 벡터를 보정할 수 있다.
예를 들어, 도 17와 같이 상기 구해진 MV0와 MV1가 가리키는 블록 주변을 탐색하며 가장 잘 부합하는 블록으로 현재 블록의 움직임 벡터를 개선할 수 있다.
Bilateral Matching에 대해 화면 간 예측 정보 수정을 수행함에 있어 SAD를 블록의 부합함을 유도하는 정도로 이용할 수 있다.
예를 들어, SAD 혹은 MR-SAD가 가장 낮은 두개의 블록이 가장 잘 부합함을 나타낼 수 있다.

Claims (10)

  1. 복수의 화면 간 예측 모드들 중 적어도 하나를 현재 블록의 화면 간 예측 모드로 결정하는 단계;
    상기 결정된 화면 간 예측 모드를 기초로 화면 간 예측 후보 리스트를 구성하는 단계;
    상기 화면 간 예측 후보 리스트 내 어느 하나 예측 후보를 기초로 움직임 보상을 수행하여, 상기 현재 블록의 제1 예측 블록을 생성하는 단계; 및
    소정의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록을 보정하는 단계를 포함하는, 영상 복호화 방법.
  2. 제1항에 있어서,
    상기 보정하는 단계는,
    상기 화면 내 예측 모드를 기반으로 상기 현재 블록의 제2 예측 블록을 생성하는 단계; 및
    상기 제1 예측 블록과 상기 제2 예측 블록을 조합하는 단계를 포함하는 영상 복호화 방법.
  3. 제1항에 있어서,
    상기 화면 내 예측 모드는, 복호화 장치에 기-약속된 고정된 모드인, 영상 복호화 방법.
  4. 제3항에 있어서,
    상기 기-약속된 고정된 모드는, Planar 모드 또는 DC 모드 중 어느 하나인, 영상 복호화 방법.
  5. 제1항에 있어서,
    상기 화면 간 예측 후보 리스트는, 공간적 머지 후보 또는 시간적 머지 후보 중 적어도 하나를 포함하는, 영상 복호화 방법.
  6. 제5항에 있어서,
    상기 화면 간 예측 후보 리스트는, 결합 머지 후보를 더 포함하고,
    상기 결합 머지 후보는, 상기 화면 간 예측 후보 리스트에 속한 적어도 2개의 머지 후보의 평균을 통해 유도되는, 영상 복호화 방법.
  7. 제1항에 있어서,
    상기 제1 예측 블록의 보정은, 화면 내 예측 기반의 보정 여부를 지시하는 플래그에 따라 선택적으로 수행되는, 영상 복호화 방법.
  8. 제7항에 있어서,
    상기 플래그는, 상기 현재 블록이 속한 슬라이스의 타입, 상기 현재 블록의 화면 간 예측 모드 또는 상기 현재 블록의 크기 중 적어도 하나를 고려하여 시그날링되거나 유도되는, 영상 복호화 방법.
  9. 복수의 화면 간 예측 모드들 중 적어도 하나를 현재 블록의 화면 간 예측 모드로 결정하는 단계;
    상기 결정된 화면 간 예측 모드를 기초로 화면 간 예측 후보 리스트를 구성하는 단계;
    상기 화면 간 예측 후보 리스트 내 어느 하나 예측 후보를 기초로 움직임 보상을 수행하여, 상기 현재 블록의 제1 예측 블록을 생성하는 단계; 및
    소정의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록을 보정하는 단계를 포함하는, 영상 부호화 방법.
  10. 영상 복호화 방법에 의해 복호화되는 비트스트림을 저장하는 컴퓨터 판독가능한 비-일시적 기록 매체에 있어서,
    상기 영상 복호화 방법은,
    복수의 화면 간 예측 모드들 중 적어도 하나를 현재 블록의 화면 간 예측 모드로 결정하는 단계;
    상기 결정된 화면 간 예측 모드를 기초로 화면 간 예측 후보 리스트를 구성하는 단계;
    상기 화면 간 예측 후보 리스트 내 어느 하나 예측 후보를 기초로 움직임 보상을 수행하여, 상기 현재 블록의 제1 예측 블록을 생성하는 단계; 및
    소정의 화면 내 예측 모드를 이용하여 상기 제1 예측 블록을 보정하는 단계를 포함하는, 컴퓨터 판독가능한 비-일시적 기록 매체.

KR1020190178642A 2018-12-28 2019-12-30 화면 간 예측 부호화 및 복호화 방법 및 장치 Pending KR20200083357A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180172827 2018-12-28
KR20180172827 2018-12-28

Publications (1)

Publication Number Publication Date
KR20200083357A true KR20200083357A (ko) 2020-07-08

Family

ID=71125794

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190178642A Pending KR20200083357A (ko) 2018-12-28 2019-12-30 화면 간 예측 부호화 및 복호화 방법 및 장치

Country Status (4)

Country Link
US (3) US11792393B2 (ko)
KR (1) KR20200083357A (ko)
CN (5) CN118694928A (ko)
WO (1) WO2020139061A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2026010467A1 (ko) * 2024-07-05 2026-01-08 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2580326A (en) * 2018-12-28 2020-07-22 British Broadcasting Corp Video encoding and video decoding
CN113366845B (zh) * 2019-01-31 2024-08-16 寰发股份有限公司 视频编码中结合帧间和帧内预测的方法和装置
CN113396586B (zh) 2019-02-11 2025-08-19 北京字节跳动网络技术有限公司 条件依赖的视频块分割
EP3957072A4 (en) * 2019-04-19 2023-01-11 Beijing Dajia Internet Information Technology Co., Ltd. VIDEO CODING METHODS AND APPARATUS USING OPTICAL FLOW PREDICTION REFINEMENT
US11146813B2 (en) * 2019-05-23 2021-10-12 Tencent America LLC Method and apparatus for video coding
JP2022548351A (ja) * 2019-09-19 2022-11-18 アリババ グループ ホウルディング リミテッド マージ候補リストを構築するための方法
WO2021125751A1 (ko) * 2019-12-16 2021-06-24 현대자동차주식회사 임의의 모양으로 분할되는 블록을 예측하는 방법 및 복호화 장치
CN113709484B (zh) * 2020-03-26 2022-12-23 杭州海康威视数字技术股份有限公司 解码方法、编码方法、装置、设备及机器可读存储介质
CN112004091B (zh) * 2020-07-31 2021-08-03 浙江大华技术股份有限公司 帧间预测方法及其相关装置
CN114143545A (zh) * 2021-11-30 2022-03-04 成都爱奇艺智能创新科技有限公司 一种视频压缩方法、装置、电子设备及存储介质
US20250080720A1 (en) * 2022-01-04 2025-03-06 Lg Electronics Inc. Image encoding/decoding method and device, and recording medium on which bitstream is stored
US20240196006A1 (en) * 2022-12-08 2024-06-13 Qualcomm Incorporated Minimum process grid for inter-prediction-related video coding processes
CN117676171B (zh) * 2024-01-31 2024-05-07 腾讯科技(深圳)有限公司 用于编码单元的三叉树划分处理方法、设备及存储介质
US20250247522A1 (en) * 2024-01-31 2025-07-31 Tencent America LLC Merge candidate derivation improvement by using intra template-matching

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100750136B1 (ko) * 2005-11-02 2007-08-21 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
LT2945382T (lt) * 2010-04-23 2017-09-11 M&K Holdings Inc. Aparatas, skirtas vaizdo kodavimui
KR20120070479A (ko) * 2010-12-21 2012-06-29 한국전자통신연구원 화면 내 예측 방향 정보 부호화/복호화 방법 및 그 장치
US9357214B2 (en) * 2012-12-07 2016-05-31 Qualcomm Incorporated Advanced merge/skip mode and advanced motion vector prediction (AMVP) mode for 3D video
KR20170084055A (ko) 2014-11-06 2017-07-19 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
CN115134594B (zh) * 2015-06-05 2024-07-23 杜比实验室特许公司 用于执行帧间预测的图像编解码方法、比特流存储方法
WO2017018664A1 (ko) * 2015-07-28 2017-02-02 엘지전자(주) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
CN116708776A (zh) * 2016-07-18 2023-09-05 韩国电子通信研究院 图像编码/解码方法和装置以及存储比特流的记录介质
US20180376148A1 (en) * 2017-06-23 2018-12-27 Qualcomm Incorporated Combination of inter-prediction and intra-prediction in video coding
US20200221077A1 (en) * 2017-09-05 2020-07-09 Lg Electronics Inc. Inter prediction mode-based image processing method and apparatus therefor
KR102929091B1 (ko) * 2018-03-27 2026-02-20 주식회사 케이티 비디오 신호 처리 방법 및 장치
US11051010B2 (en) * 2018-07-18 2021-06-29 Mediatek Inc. Merge candidates with multiple hypothesis
JP7225381B2 (ja) * 2018-09-22 2023-02-20 エルジー エレクトロニクス インコーポレイティド インター予測に基づいて、ビデオ信号を処理するための方法及び装置
US20200120339A1 (en) * 2018-10-11 2020-04-16 Mediatek Inc. Intra Prediction For Multi-Hypothesis

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2026010467A1 (ko) * 2024-07-05 2026-01-08 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체

Also Published As

Publication number Publication date
US11792393B2 (en) 2023-10-17
CN118694927A (zh) 2024-09-24
US20250097411A1 (en) 2025-03-20
US20230396760A1 (en) 2023-12-07
US12192450B2 (en) 2025-01-07
CN113454990B (zh) 2024-07-02
CN118694930A (zh) 2024-09-24
US20220070448A1 (en) 2022-03-03
CN118694928A (zh) 2024-09-24
CN113454990A (zh) 2021-09-28
CN118694929A (zh) 2024-09-24
WO2020139061A1 (ko) 2020-07-02

Similar Documents

Publication Publication Date Title
US12192450B2 (en) Inter prediction encoding and decoding method using combination of prediction blocks generated based on the weighted sums of prediction blocks, and computer-readable storage medium bitstream to be decoded thereby
CN111919449B (zh) 使用运动补偿的视频信号处理方法及设备
KR102762371B1 (ko) 지역 조명 보상을 통한 효과적인 비디오 부호화/복호화 방법 및 장치
KR102831434B1 (ko) 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN111656783B (zh) 使用基于子块的运动补偿进行视频信号处理的方法和装置
KR102852767B1 (ko) 문맥 적응적 이진 산술 부호화 방법 및 장치
CN115134611B (zh) 使用自适应去块滤波编码和解码图像的方法及其装置
KR20260049455A (ko) 예측 네트워크를 사용하는 영상의 부호화 및 복호화를 위한 방법 및 장치
CA3105339C (en) METHOD AND APPARATUS FOR INTERPREDICTION BASED ON A MODE OF FUSION
KR20190040476A (ko) 인터 예측 정보를 사용하는 방법 및 장치
KR101782156B1 (ko) 적응적인 디블록킹 필터링을 이용하는 영상 부호화 방법과 영상 복호화 방법 및 장치
KR102797058B1 (ko) 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
KR102917312B1 (ko) 화면간 예측에 기반한 영상 부호화/복호화 방법 및 장치

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

N231 Notification of change of applicant
PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

R17 Change to representative recorded

Free format text: ST27 STATUS EVENT CODE: A-3-3-R10-R17-OTH-X000 (AS PROVIDED BY THE NATIONAL OFFICE)

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

E13 Pre-grant limitation requested

Free format text: ST27 STATUS EVENT CODE: A-2-3-E10-E13-LIM-X000 (AS PROVIDED BY THE NATIONAL OFFICE)

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11 Amendment of application requested

Free format text: ST27 STATUS EVENT CODE: A-2-2-P10-P11-NAP-X000 (AS PROVIDED BY THE NATIONAL OFFICE)

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R11-asn-PN2301

R11 Change to the name of applicant or owner or transfer of ownership requested

Free format text: ST27 STATUS EVENT CODE: A-3-3-R10-R11-ASN-PN2301 (AS PROVIDED BY THE NATIONAL OFFICE)

D21 Rejection of application intended

Free format text: ST27 STATUS EVENT CODE: A-1-2-D10-D21-EXM-PE0902 (AS PROVIDED BY THE NATIONAL OFFICE)

PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902