KR20210134038A - 비디오 처리 방법 및 기기 - Google Patents

비디오 처리 방법 및 기기 Download PDF

Info

Publication number
KR20210134038A
KR20210134038A KR1020217032916A KR20217032916A KR20210134038A KR 20210134038 A KR20210134038 A KR 20210134038A KR 1020217032916 A KR1020217032916 A KR 1020217032916A KR 20217032916 A KR20217032916 A KR 20217032916A KR 20210134038 A KR20210134038 A KR 20210134038A
Authority
KR
South Korea
Prior art keywords
motion information
list
bidirectional
unidirectional
belonging
Prior art date
Application number
KR1020217032916A
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 KR20210134038A publication Critical patent/KR20210134038A/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/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/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/124Quantisation
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/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
    • 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
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

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

Abstract

본 출원의 실시예는 비디오 처리 방법 및 기기를 제공하며, Merge 모드에서의 효율적인 비디오 처리 방법을 제공한다. 당해 방법은, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 단계; 적어도 하나의 양방향 움직임 정보를 포함한 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하는 단계; 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하는 단계를 포함한다.

Description

비디오 처리 방법 및 기기
본 출원은 화상 처리 분야에 관한 것이며, 더 구체적으로는 비디오 처리 방법 및 기기에 관한 것이다.
예측은 주류 비디오 프레임워크의 중요한 모듈이며, 프레임내 예측과 프레임간 예측을 포함할 수 있다. 프레임간 예측 모드는 고급 움직임 벡터 예측(Advanced Motion Vector Prediction, AMVP) 모드와 병합(Merge) 모드를 포함할 수 있다.
Merge 모드에서 어떻게 효율적인 인코딩 및 디코딩을 수행할 것인지는 시급히 해결해야 할 과제이다.
본 출원의 실시예는 Merge 모드에서 효율적인 인코딩 및 디코딩을 수행할 수 있는 비디오 처리 방법 및 기기를 제공한다.
제1 측면은 비디오 처리 방법을 제공한다. 상기 비디오 처리 방법은, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 단계; 적어도 하나의 양방향 움직임 정보를 포함하는 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하는 단계; 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하는 단계를 포함한다.
본 출원의 실시예에서는, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하고; 적어도 하나의 양방향 움직임 정보를 포함하는 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하고; 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행함으로써, Merge 모드에서의 효율적인 인코딩 및 디코딩을 구현할 수 있다.
제2 측면은 비디오 처리 방법을 제공한다. 상기 비디오 처리 방법은, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 경우, 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용하는 단계; 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하는 단계; 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하는 단계를 포함한다.
본 출원의 실시예에서는, 움직임 정보 후보 리스트를 구축하는 경우, 당해 움직임 정보 후보 리스트에 추가되는 움직임 정보가 양방향 움직임 정보이면, 당해 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정할 수 있다. 따라서, 제1 움직임 정보 후보 리스트로부터 서브 화상 블록을 위해 양방향 움직임 정보를 선택하는 확률을 줄일 수 있으며, 이에 따라 움직임 정보 후보 리스트로부터 양방향 움직임 정보를 선택하여 인코딩 또는 디코딩을 수행함에 따른 연산 복잡도 문제점을 최대한 피할 수 있다.
제3 측면은 비디오 처리 방법을 제공한다. 상기 비디오 처리 방법은, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 단계로서, 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며, 상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것인 단계; 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하는 단계; 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하는 단계;를 포함한다.
본 출원의 실시예에서는, 본 출원의 실시예 중의 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트가, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함한다. 따라서 제1 움직임 정보 후보 리스트의 구축을 위한 하드웨어와 제2 움직임 정보 후보 리스트의 구축을 위한 하드웨어의 적어도 일부의 호환을 구현할 수 있어, 하드웨어 구성을 간소화 할 수 있다.
제4 측면은 비디오 처리 기기를 제공한다. 상기 비디오 처리 기기는, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 구축 유닛; 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 선택 유닛; 상기 서브 화상 블록에 대응하여 선택한 움직임 정보가 제1의 양방향 움직임 정보인 경우, 상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하여, 상기 서브 화상 블록의 움직임 정보로 하기 위한 조정 유닛; 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 인코딩 또는 디코딩 유닛을 포함한다.
본 출원의 실시예에서는, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하고; 적어도 하나의 양방향 움직임 정보를 포함하는 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하고; 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행함으로써, Merge 모드에서의 효율적인 인코딩 및 디코딩을 구현할 수 있다.
제5 측면은 비디오 처리 기기를 제공한다. 상기 비디오 처리 기기는, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 구축 유닛; 상기 구축 유닛이 상기 제1 움직임 정보 후보 리스트를 구축하는 경우, 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용하기 위한 조정 유닛; 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 선택 유닛; 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 인코딩 또는 디코딩 유닛을 포함한다.
본 출원의 실시예에서는, 움직임 정보 후보 리스트를 구축하는 경우, 당해 움직임 정보 후보 리스트에 추가되는 움직임 정보가 양방향 움직임 정보이면, 당해 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정할 수 있다. 따라서, 제1 움직임 정보 후보 리스트로부터 서브 화상 블록을 위해 양방향 움직임 정보를 선택하는 확률을 줄일 수 있으므로, 움직임 정보 후보 리스트로부터 양방향 움직임 정보를 선택하여 인코딩 또는 디코딩을 수행함에 따른 연산 복잡도 문제점을 최대한 피할 수 있다.
제6 측면은 비디오 처리 기기를 제공한다. 상기 비디오 처리 기기는 구축 유닛, 선택 유닛 및 인코딩 또는 디코딩 유닛을 포함하며, 상기 구축 유닛은, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 것이고, 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하고, 상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것이며; 상기 선택 유닛은, 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 것이며; 상기 인코딩 또는 디코딩 유닛은, 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 것이다.
본 출원의 실시예에서는, 본 출원의 실시예 중의 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트가, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함한다. 따라서 제1 움직임 정보 후보 리스트의 구축을 위한 하드웨어와 제2 움직임 정보 후보 리스트의 구축을 위한 하드웨어의 적어도 일부의 호환을 구현할 수 있어, 하드웨어 구성을 간소화 할 수 있다.
제7 측면은 비디오 처리 기기를 제공한다. 상기 비디오 처리 기기는 프로세서와 메모리를 포함하고, 상기 메모리는 프로그램 코드를 저장할 수 있으며, 상기 프로세서는 상기 프로그램 코드를 호출하여 제1 측면, 제2 측면 또는 제3 측면에 따른 방법을 수행하기 위한 것이다.
제8 측면은 컴퓨터 판독 가능한 저장 매체를 제공한다. 상기 저장 매체는 프로그램 코드를 저장하기 위한 것이며, 상기 프로그램 코드는 제1 측면, 제2 측면 또는 제3 측면에 따른 방법을 수행하기 위한 것이다.
본 출원의 실시예에 따른 기술적 방안을 더 명료하게 설명하기 위해, 이하 실시예 또는 종래기술에 대한 설명에서 이용하게 될 도면을 간단하게 설명한다. 자명한 것은 이하 설명 중의 도면은 본 출원의 일부 실시예에 불과하며, 본 분야의 통상의 기술자는 창조적 노동을 하지 않고도 이들 도면을 토대로 다른 도면을 얻을 수도 있다.
도 1은 본 출원의 실시예에 따른 기술적 방안을 적용한 아키텍처도이다.
도 2는 본 출원의 실시예 중의 비디오 코딩 프로세스의 예시적 도면이다.
도 3은 본 출원의 실시예에 따른 비디오 처리 방법의 예시적 흐름도이다.
도 4는 본 출원의 실시예 중의 삼각형 예측 방식의 분할 방식의 예시적 도면이다.
도 5는 본 출원의 실시예 중의 MV 스케일링 기술의 예시적 도면이다.
도 6은 본 출원의 실시예 중의 Merge 모드의 MV 후보 블록의 예시적 도면이다.
도 7은 본 발명의 실시예에 따른 픽셀 보간 값의 예시도이다.
도 8은 종래기술에 따른 삼각형 예측에 따른 처리 코드 단위의 예시도이다.
도 9는 종래기술에 따른 다른 하나의 삼각형 예측에 따른 처리 코드 단위의 예시도이다.
도 10은 본 출원의 실시예에 따른 비디오 처리 방법의 다른 하나의 예시적 흐름도이다.
도 11은 본 출원의 실시예에 따른 비디오 처리 방법의 또 다른 예시적 흐름도이다.
도 12는 본 출원의 실시예에 따른 비디오 처리 기기의 예시적 블록도이다.
도 13은 본 출원의 실시예에 따른 비디오 처리 기기의 다른 하나의 예시적 블록도이다.
도 14는 본 출원의 실시예에 따른 비디오 처리 기기의 다른 하나의 예시적 블록도이다.
도 15는 본 출원의 실시예에 따른 비디오 처리 기기의 다른 하나의 예시적 블록도이다.
이하, 본 출원의 실시예 중의 도면을 결합하여 본 출원의 실시예에 따른 기술적 방안을 설명한다. 분명한 바, 설명되는 실시예는 본 출원의 일부 실시예이며, 전체 실시예가 아니다. 본 출원의 실시예를 토대로, 본 분야의 통상의 기술자가 창조적 노동을 하지 않고 얻는 다른 모든 실시예는 모두 본 출원의 보호 범위에 속한다.
별도의 설명이 없는 한, 본 출원의 실시예에서 이용되는 모든 기술 용어와 과학 용어는 본 출원의 기술분야의 통상의 기술자가 일반적으로 이해하는 의미와 같다. 본 출원에서 이용되는 용어는 구체적인 실시예를 설명하기 위한 목적일 뿐 본 출원의 범위를 한정하는 것을 의도하지 않는다.
도 1은 본 출원의 실시예에 따른 기술적 방안을 적용한 아키텍처도이다.
도 1에 나타낸 바와 같이, 시스템(100)은 처리 대상 데이터(102)를 수신하고, 처리 대상 데이터(102)를 처리하여 처리된 데이터(108)를 발생시킬 수 있다. 예를 들면, 시스템(100)은 코딩 대상 데이터를 수신하고, 코딩 대상 데이터를 코딩하여 코딩된 데이터를 발생시킬 수 있다. 또는, 시스템(100)은 디코딩 대상 데이터를 수신하고, 디코딩 대상 데이터를 디코딩하여 디코딩된 데이터를 발생시킬 수 있다. 일부 실시예에서, 시스템(100) 중의 부품은 하나 또는 다수의 프로세서로 구현될 수 있으며, 당해 프로세서는 컴퓨팅 기기 중의 프로세서일 수도 있고, 모바일 기기(예컨대 무인기) 중의 프로세서일 수도 있다. 당해 프로세서는 임의의 종류의 프로세서일 수 있으며, 본 발명의 실시예에서는 이를 한정하지 않는다. 일부 실행 가능한 설계에서, 당해 프로세서는 코더, 디코더 또는 코덱 등을 포함할 수 있다. 시스템(100)은 하나 또는 다수의 메모리를 포함할 수도 있다. 당해 메모리는 명령과 데이터, 예를 들면 본 발명의 실시예에 따른 기술적 방안을 구현하는 컴퓨터 실행 가능한 명령, 처리 대상 데이터(102), 처리된 데이터(108) 등을 저장할 수 있다. 당해 메모리는 임의의 종류의 메모리일 수 있으며, 본 발명의 실시예에서는 이에 대해서도 한정하지 않는다.
코딩 대상 데이터는 텍스트, 화상, 그래픽 객체, 애니메이션 시퀀스, 오디오, 비디오, 또는 코딩이 필요한 임의의 다른 데이터를 포함할 수 있다. 일부 경우에, 코딩 대상 데이터는 센서로부터의 센싱 데이터를 포함할 수 있으며, 당해 센서는 시각 센서(예를 들면, 카메라, 적외선 센서), 마이크, 근거리 센서(예를 들면, 초음파 센서, 레이더), 위치 센서, 온도 센서, 터치 센서 등일 수 있다. 일부 경우에, 코딩 대상 데이터는 이용자로부터의 정보, 예를 들면 바이오 정보를 포함할 수 있다. 당해 바이오 정보는 안면 특징, 지문 스캔, 망막 스캔, 목소리 기록, DNA 샘플링 등을 포함할 수 있다.
도 2는 본 출원의 실시예에 따른 코더의 프레임워크도이다. 이하, 도 2를 결합하여 프레임간 코딩과 프레임내 코딩의 흐름을 각각 설명하기로 한다.
도 2에 나타낸 바와 같이, 프레임간 코딩과 디코딩의 흐름은 아래와 같을 수 있다.
단계 201에서 현재 프레임의 화상을 획득한다. 단계 202에서 기준 프레임의 화상을 획득한다. 단계 203a에서, 기준 프레임의 화상을 이용하여 움직임 예측을 수행하여 현재 프레임의 화상의 각각의 화상 블록의 움직임 벡터(Motion Vector, MV)를 얻는다. 단계 204a에서, 움직임 예측을 통해 얻은 움직임 벡터를 이용하여 움직임 보상을 수행하여 현재 화상 블록의 예측 값을 얻는다. 단계 205에서, 현재 화상 블록의 예측 값으로부터 현재 화상 블록을 빼서 잔여 값을 얻는다. 단계 206에서, 잔여 값을 변환하여 변환 계수를 얻는다. 단계 207에서, 변환 계수를 양자화하여 양자화된 계수를 얻을 수 있다. 단계 208에서, 양자화된 계수에 대해 엔트로피 코딩을 수행하고, 최종적으로 엔트로피 코딩으로부터 얻은 비트 스트림 및 코딩된 후의 코딩 모드 정보를 저장하거나 디코딩단으로 송신한다. 단계 209에서, 양자화된 결과에 대해 역 양자화를 수행한다. 단계 210에서, 역 양자화 결과에 대해 역 변환을 수행한다. 단계 211에서, 역 변환 결과와 움직임 보상 결과를 이용하여 재구성 픽셀을 얻는다. 단계 212에서, 재구성 픽셀에 대해 필터링을 수행한다. 단계 213에서, 필터링된 재구성 픽셀을 출력한다.
도 2에 나타낸 바와 같이, 프레임내 코딩과 디코딩의 흐름은 아래와 같을 수 있다.
단계 202에서 현재 프레임의 화상을 획득한다. 단계 203b에서, 현재 프레임의 화상에 대해 프레임내 예측 선택을 수행한다. 단계 204b에서, 현재 프레임 중의 현재 화상 블록에 대해 프레임내 예측을 수행한다. 단계 205에서, 현재 화상 블록의 예측 값으로부터 현재 화상 블록을 빼서 잔여 값을 얻는다. 단계 206에서, 화상 블록의 잔여 값을 변환하여 변환 계수를 얻는다. 단계 207에서, 변환 계수를 양자화하여 양자화된 계수를 얻는다. 단계 208에서, 양자화된 계수에 대해 엔트로피 코딩을 수행하고, 최종적으로 엔트로피 코딩으로부터 얻은 비트 스트림 및 코딩된 후의 코딩 모드 정보를 저장하거나 디코딩단으로 송신한다. 단계 209에서, 양자화 결과에 대해 역 양자화를 수행한다. 단계 210에서, 역 양자화 결과에 대해 역 변환을 수행한다. 단계 211에서, 역 변환 결과와 프레임내 예측 결과를 이용하여 재구성 픽셀을 얻는다.
도 2에 나타낸 바와 같이, 코딩 프로세스에서는 중복을 제거하기 위해 화상에 대해 예측을 수행할 수 있다. 비디오에서 서로 다른 화상은 서로 다른 예측 방식을 이용할 수 있다. 화상에 이용된 예측 방식에 따라, 화상을 프레임내 예측 화상과 프레임간 예측 화상으로 구분할 수 있다. 프레임간 예측 모드는 AMVP 모드와 Merge 모드를 포함할 수 있다.
AMVP 모드의 경우에는, 먼저 움직임 벡터 예측(motion vector prediction, MVP)을 결정할 수 있으며, MVP를 얻은 후에는 MVP에 따라 움직임 예측의 시작점을 결정하고, 시작점 근처에서 움직임을 탐색하고, 탐색이 완료된 후 최적의 MV를 얻고, MV를 이용하여 기준 화상 중의 기준 블록의 위치를 결정하고, 기준 블록으로부터 현재 블록을 빼서 잔여 블록을 얻고, MV로부터 MVP를 빼어 움직임 벡터 차이값(Motion Vector Difference, MVD)을 얻고, 당해 MVD를 코드 스트림을 통해 디코딩단으로 전송할 수 있다.
Merge 모드의 경우에는, 먼저 MVP를 결정하고, 직접 MVP를 MV로 결정할 수 있다. 여기서, MVP를 얻기 위해 먼저 하나의 MVP 후보 리스트(merge candidate list)를 구축할 수 있으며, MVP 후보 리스트에는 적어도 하나의 후보 MVP가 포함될 수 있으며, 각각의 후보 MVP에는 하나의 인덱스가 대응될 수 있다. 코딩단은 MVP 후보 리스트로부터 MVP를 선택한 후, 당해 MVP 인덱스를 코드 스트림에 기입할 수 있으며, 디코딩단은 당해 인덱스에 따라 MVP 후보 리스트로부터 당해 인덱스에 대응되는 MVP를 찾아 화상 블록에 대한 디코딩을 구현할 수 있다.
Merge 모드를 명확하게 이해하기 위해, 이하 Merge 모드를 이용하여 코딩을 수행하는 동작 흐름을 설명한다.
단계 1: MVP 후보 리스트를 획득한다.
단계 2: MVP 후보 리스트로부터 최적의 MVP를 하나 선택하고, 이와 동시에 MVP 후보 리스트에서의 당해 MVP의 인덱스를 얻는다.
단계 3: 당해 MVP를 현재 블록의 MV로 한다.
단계 4: MV를 토대로, 기준 프레임의 화상에서의 기준 블록(예측 블록이라고도 할 수 있음)의 위치를 결정한다.
단계 5: 기준 블록으로부터 현재 블록을 빼서 잔여 데이터를 얻는다.
단계 6: 잔여 데이터와 MVP의 인덱스를 디코딩단으로 전송한다.
이해해야 할 것은, 상기 흐름은 Merge 모드의 하나의 구체적인 구현형태일 뿐이다. Merge 모드는 다른 구현형태를 가질 수도 있다.
예를 들면, Skip 모드는 Merge 모드의 하나의 특례이다. Merge 모드에 따라 MV를 얻은 후, 만약 코딩단이 현재 블록과 기준 블록이 실질적으로 동일하다는 것을 확인하면, 잔여 데이터를 전송할 필요가 없이 MV의 인덱스만 전송하면 되고, 나아가 하나의 태그를 전달할 수 있다. 당해 태그는 현재 블록을 기준 블록으로부터 직접 얻을 수 있음을 나타낼 수 있다.
다시 말해, Merge 모드의 특징은 MV=MVP(MVD=0)이고, Skip 모드는, 재구축 값 rec=예측 값 pred(잔여 값 resi=0)이라는 하나의 특징이 더 많다.
Merge 모드는 삼각형 예측 기술에 적용될 수 있다. 삼각형 예측 기술에서는 코딩할 화상 블록을 삼각형 형상의 2개의 서브 화상 블록으로 분할할 수 있으며, 각각의 서브 화상 블록을 위해 움직임 정보 후보 리스트로부터 움직임 벡터를 각각 결정하고, 각각의 서브 화상 블록의 움직임 벡터를 토대로, 각각의 서브 화상 블록에 대응되는 예측 서브 블록을 결정하며, 각각의 서브 화상 블록에 대응되는 예측 서브 블록을 토대로 현재 화상 블록의 예측 블록을 구성할 수 있으며, 이로써 현재 화상 블록에 대한 코딩을 구현할 수 있다.
움직임 벡터 후보 리스트에 포함된 움직임 벡터는 양방향 움직임 벡터(하나의 양방향 움직임 벡터는 2개의 단방향 움직임 벡터를 포함)일 수 있으며, 만약 현재 화상 블록을 다수의 서브 화상 블록으로 분할한다면, 삼각형 형상의 2개의 서브 화상 블록을 위해 각각 선택한 움직임 벡터가 모두 양방향 움직임 벡터인 경우, 연산 복잡도가 높아지는 문제점이 존재할 수 있다. 예를 들면, 현재 화상 블록이 장방형 화상 블록인 경우, 당해 장방형 화상 블록을 2개의 삼각형 서브 화상 블록으로 분할한 후, 만약 서브 화상 블록 1의 양방향 움직임 벡터가 움직임 벡터 1과 움직임 벡터 2를 포함하고, 서브 화상 블록 2의 양방향 움직임 벡터가 움직임 벡터 3과 움직임 벡터 4를 포함한다면, 서브 화상 블록 1의 움직임 보상 프로세스는, 움직임 벡터 1이 가리키는 장방형 예측 블록과 움직임 벡터 2가 가리키는 장방형 예측 블록을 획득하여 서브 화상 블록 1의 최종 예측 블록을 얻을 필요가 있고; 서브 화상 블록 2의 움직임 보상 프로세스는, 움직임 벡터 3이 가리키는 장방형 예측 블록과 움직임 벡터 4가 가리키는 장방형 예측 블록을 획득하여 서브 화상 블록 2의 최종 예측 블록을 얻을 필요가 있다. 그후, 서브 화상 1과 서브 화상 2의 최종 예측 블록을 연결하여, 서브 화상 블록 1과 서브 화상 블록 2로 구성된 장방형 화상 블록의 예측 블록을 얻는다. 따라서, 현재 화상 블록의 움직임 보상 프로세스 전체는 4개의 예측 블록을 이용해야 하므로, 대역폭 이용률이 낮고, 연산 복잡도가 높은 문제점이 존재한다.
이를 감안하여, 현재 화상 블록을 다수의 서브 화상 블록으로 분할하는 경우, 움직임 벡터 후보 리스트 중의 움직임 벡터가 모두 단방향 움직임 벡터인 것이 바람직할 수 있으며, 이로써 각각의 서브 화상 블록에 대하여 하나의 예측 블록을 각각 얻을 수 있다. 그러면 현재 화상 블록의 움직임 보상 프로세스 전체는 2개의 예측 블록(당해 2개의 예측 블록은 서로 다른 장방형 예측 블록으로부터 유래할 수 있음)만 이용하여, 위에서 언급한 연산 복잡도 문제점을 피할 수 있다. 여기서, 현재 화상 블록을 삼각형 형상을 가진 서브 화상 블록으로 분할하는 경우에 대해, 하기 방식으로 움직임 벡터 후보 리스트 중의 움직임 벡터가 단방향 움직임 벡터가 되도록 하는 것을 구현할 수 있다.
먼저, 현재 화상 블록의 공간 도메인 상의 인접 블록과 시간 도메인 상의 인접 블록의 MV로 하나의 후보 리스트 a를 구성한다.
이들 인접 블록의 MV가 양방향 MV일 수 있으므로, 이들 MV를 단방향 MV가 되도록 처리하여, 삼각형 형상의 2개의 서브 화상 블록에 선택되도록 할 필요가 있다. 여기서 최종 얻어지는 MV 리스트가 다른 하나의 후보 리스트 b인 것으로 가정하면 처리 규칙은 아래와 같을 수 있다.
1. 모든 후보 리스트 a 중의 단방향 MV를 순서대로 하나씩 후보 리스트 b에 넣는다.
2. 후보 리스트 a 중의 양방향 예측 리스트 0(List0) 중의 MV를 순서대로 하나씩 후보 리스트 b에 넣는다.
3. 후보 리스트 a 중의 양방향 예측 리스트 1(List1) 중의 MV를 순서대로 하나씩 후보 리스트 b에 넣는다.
4. 후보 리스트 a 중의 양방향 예측 리스트 0과 예측 리스트 1 중의 2개의 MV의 평균값을 하나씩 후보 리스트 b에 넣는다.
코딩단은 서브 화상 블록을 위해 후보 리스트로부터 하나의 MV를 각각 선택하고, 선택한 MV가 위치한 후보 리스트 b 중의 인덱스 값과 삼각형의 분할 방식을 각각 디코딩단으로 전송하거나, 또는 선택한 MV가 위치한 후보 리스트 b 중의 인덱스 값으로 하나의 조합 인덱스를 생성하고 당해 조합 인덱스를 디코딩단으로 전송할 수 있다. 조합 인덱스는 삼각형 분할 방식이 추가로 부여될 수 있다. 여기서, 이해할수 있듯이, 움직임 보상 프로세스에 이용되는 최종 결정된 움직임 정보 후보 리스트의 구축 방식이 서로 다르므로, 당해 구축 방식의 다름에 따라, 동일한 화상 블록에 대해 선택한 MV는 서로 다른 움직임 정보 후보 리스트로부터 획득할 수 있으며, 이로써 선택된 MV에 대응되는 인덱스 값을 결정할 때에는 최종 결정된 움직임 정보 후보 리스트에 근거할 수 있다.
물론, 화상 블록을 그밖의 다른 형상을 가진 다수의 서브 화상 블록으로 분할하는 경우에는, 움직임 보상을 위한 최종 움직임 정보 후보 리스트를 상기 방식으로 이용하여 구축할 수도 있음을 이해할 수 있으며, 상기 내용은 단지 화상 블록을 삼각형 형상을 가진 서브 화상 블록으로 분할하는 경우에 대해 움직임 정보 후보 리스트를 구축하는 예시적 설명일 뿐이다.
그러나, 이러한 움직임 벡터 후보 리스트의 구축 방식은 모든 후보의 MV를 편력하고, 양방향 MV에 대해 양방향 MV로부터 단방향 MV로의 재구성을 수행하고(즉 하나의 양방향 MV를 2개의 단방향 MV로 변환), 재구성된 MV의 중복 여부를 판단하고, 판단 이후의 중복되지 않은 MV를 후보 리스트 b에 추가할 필요가 있으며, 이와 동시에, 하나의 양방향 MV의 2개의 단방향 MV는 모두 후보 리스트 b에 추가될 가능성이 있다. 따라서, 화상 블록의 인코딩 및 디코딩의 처리 복잡도가 높다.
이해해야 할 것은, 상기 방안은 삼각형 예측 기술을 이용한 비디오 인코딩 또는 디코딩 프로세스에 이용될 수 있으나 이에 한정되지 않으며, 움직임 정보 후보 리스트에 양방향 움직임 정보를 구비한 비디오 인코딩 및 디코딩 프로세스에서 모두 적응적으로 적용될 수 있다.
도 3은 본 출원의 실시예에 따른 비디오 처리 방법(300)의 예시적 흐름도이다. 당해 방법(300)은 처리 기기에 의해 구현될 수 있다. 당해 처리 기기는 코딩단 또는 디코딩단에 이용되며, 구체적으로 코더 또는 디코더일 수 있다. 당해 방법(300)은 아래 내용 중의 적어도 일부 내용을 포함한다.
단계 310에서, 처리 기기가 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하며, 당해 제1 움직임 정보 후보 리스트는 적어도 하나의 양방향 움직임 정보를 포함한다.
선택적으로, 화상을 코딩하는 경우, 화상은 다수의 화상 블록으로 분할될 수 있다. 예를 들어, 당해 화상은 하나의 m×n 화상 블록 어레이로 분할될 수 있다. 화상 블록은 직사각형 형상, 정방형 형상, 원형 형상 또는 그밖의 임의의 형상을 가질 수 있다. 화상 블록은 p×q 픽셀과 같이 임의의 사이즈를 가질 수 있다. 먼저 당해 화상을 다수의 작은 블록으로 분할하여 다양한 해상도의 화상을 코딩할 수 있다. 각각의 화상 블록은 모두 서로 같은 사이즈 및/또는 형상을 가질 수 있다. 대안적으로, 2개 또는 그 이상의 화상 블록은 서로 다른 사이즈 및/또는 형상을 가질 수 있다. 화상이 다수의 화상 블록으로 분할된 후에는 화상 데이터 중의 이들 화상 블록을 각각 코딩할 수 있다.
선택적으로, 제1 움직임 정보 후보 리스트는 적어도 하나의 후보 움직임 정보를 포함할 수 있다. 제1 움직임 정보 후보 리스트에 포함된 후보 움직임 정보의 개수는 기설정 값일 수 있다. 예를 들면, 처리 기기는 제1 움직임 정보 후보 리스트에 포함된 움직임 정보의 개수가 기설정 값에 도달할 때까지, 추가할 움직임 정보를 순차적으로 움직임 정보 후보 리스트에 추가할 수 있다.
본 출원의 실시예에서 언급된 움직임 정보 후보 리스트(예를 들면, 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트)는 화상 블록의 후보 움직임 정보의 집합일 수 있다. 당해 움직임 정보 후보 리스트 중의 각각의 후보 움직임 정보는 동일한 버퍼(buffer)에 저장될 수도 있고, 서로 다른 버퍼에 저장될 수도 있으며, 여기서 이를 한정하지 않는다. 움직임 정보 후보 리스트에서의 움직임 정보의 인덱스는, 현재 블록의 후보 움직임 정보의 집합 중의 움직임 정보의 인덱스일 수 있다.
예를 들면, 후보 움직임 정보의 집합은 5개의 후보 움직임 정보를 포함하며, 당해 5개의 후보 움직임 정보는 움직임 정보 후보 리스트에서의 인덱스가 각각 0, 1, 2, 3, 4일 수 있다.
본 출원의 실시예에서 언급된 움직임 정보는 움직임 벡터를 포함하거나, 또는 움직임 벡터와 기준 프레임 정보(예를 들면, 기준 프레임 인덱스) 등을 포함할 수 있다.
단계 320에서, 처리 기기는 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 상기 제1 움직임 정보 후보 리스트로부터 움직임 정보를 각각 선택한다.
선택적으로, 본 출원의 실시예에서, 제1 화상 블록은 하나의 서브 화상 블록으로 구성될 수 있으며, 다수의(예를 들면, 2개) 서브 화상 블록으로 구성될 수도 있다. 당해 제1 화상 블록이 하나의 서브 화상 블록으로 구성된 경우, 당해 하나의 서브 화상 블록을 당해 제1 화상 블록 자체로 이해할 수 있다.
선택적으로, 본 출원의 실시예에서, 제1 화상 블록이 사각형인 경우, 당해 사각형의 대각선을 따라 분할하여 2개의 삼각형 서브 화상 블록을 얻을 수 있다.
예를 들면, 도 4의 좌측 도형에 나타낸 바와 같이, 사각형의 좌상각으로부터 우하각으로의 방식으로 분할하여 2개의 PU인 PU1과 PU2를 얻을 수 있다. 또는 도 4의 우측 도형에 나타낸 바와 같이, 사각형의 좌하각으로부터 우상각으로의 방식으로 분할하여 PU1과 PU2를 얻을 수도 있다.
또는, 제1 화상 블록이 사각형인 경우, 당해 사각형을 2개보다 많은 삼각형, 또는 적어도 2개의 사각형 등으로 분할할 수 있다.
예를 들면, 제1 화상 블록이 직사각형인 경우, 제1 화상 블록의 한 변과 평행하도록 화상 블록의 중심으로부터 제1 화상 블록을 절단하여 2개의 직사각형 또는 정방형으로 절단하거나, 또는 제1 화상 블록의 한 변과 평행하지 않도록 제1 화상 블록의 중심으로부터 CU를 절단하여, 2개의 사다리꼴로 절단하며, 본 출원은 이에 대해 구체적으로 한정하지 않는다.
예를 들면, 먼저 제1 화상 블록을 대각선을 따라 좌측 상부로부터 우측 하부로 분할하고, 다시 제1 화상 블록의 한 변과 평행하도록 제1 화상 블록의 중심으로부터 제1 화상 블록을 분할할 수 있으며, 이로써 4개의 서브 화상 블록을 얻을 수 있다.
이해해야 할 것은, 상기 예시에서 제1 화상 블록은 사각형일 수 있으나, 본 출원의 실시예는 이에 한정되지 않으며, 본 출원의 실시예 중의 제1 화상 블록은 사각형 이외의 임의의 형상일 수 있다.
선택적으로, 본 출원의 실시예에서 현재 프레임 중의 각각의 화상 블록을 분할하는 것은, 동일한 분할 방식에 기반할 수 있다. 예를 들면 모두 삼각형 분할 방식일 수 있다. 또한, 서로 다른 분할 방식에 기반할 수도 있다. 예를 들면, 하나의 화상 블록에 대해서는 삼각형의 분할 방식을 이용하여 분할하고, 다른 하나의 화상 블록에 대해서는 직사각형 분할 방식(즉 다수의 직사각형으로 분할)을 이용하여 분할할 수 있으며, 또 예를 들면, 하나의 화상 블록에 대해서는 삼각형 분할 방식을 이용하여 분할하고, 다른 하나의 화상 블록은 분할하지 않을 수도 있으며, 본 출원은 이에 대해 구체적으로 한정하지 않는다.
선택적으로, 본 출원의 실시예에서 서로 다른 화상 블록에 대하여, 각각의 화상 블록에 포함된 서브 화상 블록의 개수는 서로 같을 수 있고, 서로 다를 수도 있으며, 본 출원은 이에 대해 구체적으로 한정하지 않는다.
본 출원의 실시예 중의 양방향 움직임 정보는 2개의 단방향 움직임 정보를 포함하는 움직임 정보를 가리킬 수 있다. 단방향 움직임 정보는 순방향 움직임 정보 또는 역방향 움직임 정보이며, 여기서 순방향 움직임 정보는 대응되는 기준 프레임이 현재 프레임의 순방향 프레임임을 가리키고, 역방향 움직임 정보는 대응되는 기준 프레임이 현재 프레임의 역방향 프레임임을 가리킨다.
양방향 움직임 정보에 포함된 2개의 단방향 움직임 정보는 모두 순방향 움직임 정보일 수도 있고, 모두 역방향 움직임 정보일 수도 있으며, 하나의 순방향 움직임 정보와 하나의 역방향 움직임 정보일 수도 있으며, 본 출원은 이에 대해 구체적으로 한정하지 않는다.
단계 330에서, 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행한다.
본 출원의 실시예에서, 제1 움직임 정보 후보 리스트를 구축할 때, 양방향 움직임 정보가 포함될 수 있다. 그러나 전술한 바와 같이, 만약 서브 화상 블록의 움직임 정보가 양방향 움직임 정보이면, 후속되는 인코딩 및 디코딩의 복잡도가 높아지는 문제점이 발생할 수 있다. 따라서, 제1 화상 블록의 서브 화상 블록에 대해 움직임 정보를 선택하는 경우, 만약 양방향 움직임 정보를 선택하였다면, 기설정 규칙에 따라 상기 제1의 양방향 움직임 정보를 처리하여 상기 제1 화상 블록의 인코딩 또는 디코딩에 이용할 수 있다.
하나의 구현형태에서, 처리 기기는 당해 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하고, 단방향 움직임 정보를 이용하여 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행할 수 있다.
선택적으로, 본 출원의 실시예에서, 만약 제1 화상 블록이 하나의 서브 화상 블록으로 구성되면, 당해 서브 화상의 움직임 정보가 가리키는 화상 블록을 제1 화상 블록의 예측 블록으로 하고, 당해 예측 블록과 제1 화상 블록을 토대로 잔여 데이터를 획득하고, 코딩된 코드 스트림에 잔여 데이터를 기입할 수 있다.
이와 상응하게, 디코딩단에서는 디코딩된 코드 스트림으로부터 잔여 데이터를 획득하고, 당해 서브 화상의 움직임 정보가 가리키는 화상 블록을 제1 화상 블록의 예측 블록으로 할 수 있으며, 이로써, 당해 잔여 데이터와 당해 예측 블록을 토대로, 현재 제1 화상 블록을 디코딩할 수 있다.
선택적으로, 본 출원의 실시예에서, 만약 제1 화상 블록이 다수의 서브 화상 블록으로 구성되면, 각각의 서브 화상 블록은 하나의 예측 서브 블록에 대응되고, 다수의 서브 화상 블록에 대응되는 다수의 예측 서브 블록은 하나의 예측 블록을 구성할 수 있다. 여기서, 예측 블록 중의 각각의 예측 서브 블록의 위치는 대응되는 서브 화상 블록의, 제1 화상 블록 중의 위치에 상당할 수 있으며, 당해 예측 블록과 제1 화상 블록을 토대로 잔여 데이터를 획득하고, 코딩된 코드 스트림에 잔여 데이터를 기입할 수 있다.
이와 상응하게, 디코딩단에서는, 디코딩된 코드 스트림으로부터 잔여 데이터를 획득하고, 다수의 서브 화상 블록의 움직임 정보가 가리키는 다수의 예측 서브 블록을 이용하여 예측 블록을 구성할 수 있으며, 이로써 당해 잔여 데이터와 당해 예측 블록을 토대로 현재 제1 화상 블록을 디코딩할 수 있다.
선택적으로, 본 출원의 실시예에서, 코딩단에서는 각각의 서브 화상 블록을 위해 제1 움직임 정보 후보 리스트로부터 선택한 움직임 정보의 인덱스를 코딩된 코드 스트림에 각각 기입할 수 있다. 여기서, 당해 움직임 정보의 인덱스는 당해 움직임 정보 후보 리스트 중의 인덱스일 수 있다. 더 나아가, 코딩단은 제1 화상 블록의 분할 방식을 코딩된 코드 스트림에 기입할 수도 있다.
그리고 디코딩단에서는, 디코딩된 코드 스트림으로부터 각각의 서브 화상 블록에 대응되는 움직임 정보의 인덱스를 각각 획득하고, 움직임 정보의 인덱스에 따라, 각각의 서브 화상 블록을 위해 제1 움직임 정보 후보 리스트로부터 움직임 정보를 선택할 수 있으며, 만약 선택한 움직임 정보가 제1의 양방향 움직임 정보이면, 당해 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정해야 한다. 더 나아가, 디코딩단에서는 디코딩된 코드 스트림으로부터 제1 화상 블록의 분할 방식을 획득하고, 당해 제1 화상 블록의 분할 방식에 따라, 각각의 서브 화상에 대응되는 예측 서브 블록에 대해 예측 블록을 구성할 수도 있다.
또는, 본 출원의 실시예에서, 코딩단은 각각의 서브 화상 블록을 위해 제1 움직임 정보 후보 리스트로부터 선택한 움직임 정보의 인덱스를 토대로, 하나의 수치(조합된 인덱스의 수치라고도 함)를 얻고, 당해 수치를 디코딩단으로 전송할 수 있다. 즉 하나의 수치로 다수의 서브 화상 블록의 움직임 정보의 인덱스를 표현한다. 선택적으로, 당해 수치에 서브 화상 블록의 분할 방식의 의미를 더 부여할 수 있다.
여기서, 코딩단은 각각의 서브 화상 블록의 움직임 정보의 인덱스와 서브 화상 블록의 분할 방식을 토대로, 수치 리스트로부터 당해 수치를 선택할 수 있다.
예를 들면, 움직임 벡터 후보 리스트에 5개의 후보 움직임 벡터가 존재하는 것으로 가정하면, 현재 CU를 삼각형으로 분할하는 분할 방식은 좌상각으로부터 우하각으로의 분할 방식(즉 135도 분할 방향), 및 좌측 하부로부터 우측 상부로 분할하는 분할 방향(즉 45도 분할 방향)과 같은 2가지 분할 방식일 수 있으며, 현재 CU를 분할한 후 2개의 PU인 PU0과 PU1을 얻을 수 있다.
좌측 상부로부터 우측 하부로 분할하는 분할 방향, 즉 135도 분할 방향에 대해서는, 만약 PU0이 인덱스가 1인 후보 움직임 벡터를 이용하고, PU1이 인덱스가 0인 후보 움직임 벡터를 이용한다면, 당해 조합된 인덱스의 수치는 0이다.
좌측 하부로부터 우측 상부로 분할하는 분할 방향, 즉 45도 분할 방향에 대해서는, 만약 PU0이 인덱스가 0인 후보 움직임 벡터를 이용하고, PU1이 인덱스가 1인 후보 움직임 벡터를 이용한다면, 당해 조합된 인덱스의 수치는 1이다.
좌측 하부로부터 우측 상부로 분할하는 분할 방향, 즉 45도 분할 방향에 대해서는, 만약 PU0이 인덱스가 0인 후보 움직임 벡터를 이용하고, PU1이 인덱스가 2인 후보 움직임 벡터를 이용한다면, 당해 조합된 인덱스의 수치는 2이다.
좌측 상부로부터 우측 하부로 분할하는 분할 방향, 즉 135도 분할 방향에 대해서는, 만약 PU0이 인덱스가 0인 후보 움직임 벡터를 이용하고, PU1이 인덱스가 1인 후보 움직임 벡터를 이용한다면, 당해 조합된 인덱스의 수치는 3이다.
이와 같이 유추하면, 조합된 인덱스는 0~39의 수치일 수 있으며, 그 이유는 아래와 같다. 즉, 5개의 후보 움직임 벡터가 존재하고, 만약 각각의 PU가 이들 5개의 후보 움직임 벡터 중 어느 하나를 각각 선택할 수 있다면, 2개의 PU가 후보 움직임 벡터를 선택하는 선택 방식이 5×5=25개일 수 있다. 만약 PU1과 PU2가 서로 같은 움직임 벡터를 선택하는 것을 피해야 한다면, 25개의 선택 방식으로부터 PU0과 PU1이 서로 같은 MV을 선택하는 5가지 경우를 제거하면 20가지 선택 방식이 된다. 이에 더해 2가지 서로 다른 삼각형 분할 방향을 고려하면 40가지 경우가 되며, 다시 말해 조합된 인덱스는 0~39의 수치일 수 있다.
본 출원의 실시예에서 언급된 제1의 양방향 움직임 정보는 임의의 양방향 움직임 정보일 수 있다. 즉, 제1 움직임 정보 후보 리스트로부터 서브 화상 블록을 위해 양방향 움직임 정보를 선택하였다면, 모두 당해 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정해야 한다.
또는, 당해 제1의 양방향 움직임 정보는 특정의 양방향 움직임 정보일 수 있다. 즉, 제1 움직임 정보 후보 리스트로부터 서브 화상 블록을 위해 선택한 움직임 정보가 특정의 양방향 움직임 정보인 경우에만, 당해 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정할 필요가 있다.
선택적으로, 본 출원의 실시예에서는, 임의의 서브 화상 블록에 대해 양방향 움직임 정보를 선택하고, 모두 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 수행할 수 있다.
또는, 특정 서브 화상 블록에 대해 양방향 움직임 정보를 선택하고, 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 수행할 수도 있다.
선택적으로, 본 출원의 실시예에서는 임의의 화상 블록의 서브 화상 블록에 대해 양방향 움직임 정보를 선택하고, 모두 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 수행할 수 있다.
또는, 특정 화상 블록의 서브 화상 블록에 대해 양방향 움직임 정보를 선택하고, 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 수행할 수도 있다.
선택적으로, 본 출원의 실시예에서 제1의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하는 방식은 다양한 구현 형태가 존재할 수 있다.
하나의 구현형태에서, 처리 기기는 당해 제1의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하여 제1의 단방향 움직임 정보로 할 수 있다.
본 출원의 실시예에서, 하나의 양방향 움직임 정보에 포함된 하나의 단방향 움직임 정보는 하나의 리스트(본 출원의 실시예에서 언급된 제1 리스트)에 속할 수 있고, 하나의 양방향 움직임 정보에 포함된 다른 하나의 단방향 움직임 정보는 다른 하나의 리스트(본 출원의 실시예에서 언급된 제2 리스트)에 속할 수 있다.
본 출원의 실시예 중의 제1 리스트는 상기에서 언급된 리스트 0일 수 있고, 제2 리스트는 상기에서 언급된 리스트 1일 수 있다. 리스트 0과 리스트 1에는 모두 순방향 또는 역방향의 이미 코딩된 기준 화상 블록에 대응되는 움직임 정보가 포함될 수 있다. 물론, 본 출원의 실시예 중의 제1 리스트와 제2 리스트는 리스트 0과 리스트 1가 아닐 수도 있으며, 제1 리스트와 제2 리스트는 하나의 양방향 움직임 정보 중의 2개의 단방향 움직임 정보가 각각 제1 리스트 또는 제2 리스트로부터 유래할 수 있음을 각각 예시적으로 나타낼 수 있다. 또한, 제1 리스트와 제2 리스트는 그밖의 다른 논리 또는 방법 등에 따라 설계된 리스트일 수 있으며, 버퍼에 저장될 수 있으며, 논리 의미 상의 리스트일 수도 있다.
예를 들면, 표 1에 나타낸 바와 같이, 현재 화상 블록(번호: 100)은 모두 6개의 기준 화상 블록, 즉 3개의 순방향 기준 화상 블록과 3개의 역방향 기준 화상 블록을 포함한다. 당해 6개의 기준 화상 블록은 자연 화상의 순서로 97, 98, 99, 100, 101, 102, 103으로 번호가 매겨진다(즉 자연 번호). 이들 기준 화상 블록은 리스트 0과 리스트 1 중의 인덱스가 서로 다르며, 리스트 0에서 현재 기준 화상 블록에 가장 근접하는 전방 하나의 기준 화상 블록의 태그는 인덱스 0이고, 그 직전의 기준 화상 블록은 인덱스 1이며, 순방향 기준 화상 블록 이후로는 순서에 따른 역방향 기준 화상 블록이며, 화상 블록 97, 98, 99, 100, 101, 102, 103의 인덱스는 순차적으로 2, 1, 0, 3, 4, 5일 수 있다. 리스트 1에서, 현재 기준 화상 블록에 가장 근접하는 후방 하나의 기준 화상 블록의 태그는 인덱스 0이고, 그 직후의 기준 화상 블록은 인덱스 1이다. 역방향 기준 화상 블록의 정렬이 완료된 후 다시 순방향 기준 화상 블록을 정열하면, 화상 블록 97, 98, 99, 100, 101, 102, 103의 인덱스는 순차적으로 5, 4, 3, 0, 1, 2일 수 있다.
자연 번호 97 98 99 100 101 102 103
리스트 0의 인덱스 번호 2 1 0 3 4 5
리스트 1의 인덱스 번호 5 4 3 0 1 2
선택적으로, 처리 기기는 기설정 규칙에 따라, 상기 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제1의 단방향 움직임 정보로 할 수 있다. 여기서, 상기 기설정 규칙은 상기 제1의 양방향 움직임 정보로부터, 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트이다.
구체적으로, 처리 기기에 기설정 규칙을 미리 설정할 수 있으며, 당해 기설정 규칙은 제1 리스트에 속하는 단방향 움직임 정보를 선택하는지, 아니면 제2 리스트에 속하는 단방향 움직임 정보를 선택하는지를 지시할 수 있으며, 이로써 처리 기기는 당해 기설정 규칙에 따라, 당해 제1의 양방향 움직임 정보로부터 단방향 움직임 정보의 선택을 수행할 수 있다.
또는, 본 출원의 실시예에서는 알고리즘 방식을 이용하여 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 제1의 단방향 움직임 정보로 할 수도 있다.
예를 들면, 제1의 양방향 움직임 정보 중의 2개의 단방향 움직임 정보에 대응되는 예측 서브 블록을 각각 현재 서브 화상 블록에 매칭시켜 바람직한 매칭 결과에 대응되는 예측 서브 블록에 대응되는 단방향 움직임 정보를 선택하여 제1의 단방향 움직임 정보로 할 수 있다.
선택적으로, 본 출원의 실시예에서, 상기 제1의 양방향 움직임 정보를 위해 상기 제1의 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능하다.
구체적으로, 서로 다른 화상 블록에 관하여, 이들 화상 블록에 포함되는 서브 화상 블록을 위해 단방향 움직임 정보를 선택하는 선택 방식은 서로 다를 수 있다.
예를 들면, 현재 화상 블록의 직전 화상 블록에 대해서는, 상기에서 언급한 기설정 규칙에 따른 방식으로 당해 직전 화상 블록에 포함된 각각의 서브 화상 블록에 대해 단방향 움직임 정보의 선택을 수행하고, 현재 화상 블록에 대해서는, 상기에서 언급한 알고리즘에 따른 방식으로 당해 현재 화상 블록에 포함된 각각의 서브 화상 블록에 대해 단방향 움직임 정보의 선택을 수행할 수 있다.
또는, 동일한 화상 블록의 서로 다른 서브 화상 블록에 대하여, 양방향 움직임 정보로부터 단방향 움직임 정보를 선택하는 선택 방식은 서로 다를 수 있다.
예를 들면, 현재 서브 화상 블록의 직전 서브 화상 블록(당해 직전 서브 화상 블록과 현재 서브 화상 블록은 동일한 화상 블록에 속함)에 대해서는, 상기에서 언급한 기설정 규칙에 따른 방식으로 당해 직전 서브 화상 블록에 대해 단방향 움직임 정보의 선택을 수행하고, 현재 서브 화상 블록에 대해서는, 상기에서 언급한 알고리즘에 따른 방식을 이용으로 당해 현재 서브 화상 블록에 대해 단방향 움직임 정보의 선택을 수행할 수 있다.
물론, 본 출원의 실시예에서, 서로 다른 화상 블록 또는 서로 다른 서브 화상 블록에 대응되는, 단방향 움직임 정보의 선택 방식은 서로 같을 수 있다.
본 출원의 실시예에서, 만약 제1의 양방향 움직임 정보로부터 하나의 제1의 단방향 움직임 정보를 선택하였다면, 코딩단에서는 상기 제1의 단방향 움직임 정보의 제1 식별자를 코딩된 코드 스트림에 기입할 수 있다.
이와 상응하게, 디코딩단에서는 디코딩된 코드 스트림으로부터 제1의 단방향 움직임 정보의 제1 식별자를 획득할 수 있으며, 이로써 당해 제1 식별자에 따라, 제1의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하여 제1의 단방향 움직임 정보로 할 수 있다.
예를 들면, 제1의 양방향 움직임 정보에 포함된 단방향 움직임 정보의 식별자가 각각 0과 1인 것으로 가정한다. 만약 코딩단에서 식별자가 0인 단방향 움직임 정보를 선택하여 제1의 단방향 움직임 정보로 하였다면, 식별자 0을 코드 스트림에 기입할 수 있고, 디코딩단에서는 디코딩된 코드 스트림으로부터 당해 식별자 0을 획득할 수 있으며, 이로써 디코딩단은 제1의 양방향 움직임 정보 중의 식별자가 0인 움직임 정보를 제1의 단방향 움직임 정보로 결정할 수 있다.
코딩단이 제1 식별자를 코딩된 코드 스트림에 기입하는 경우에 대하여, 코딩단은 알고리즘에 기반한 방식으로 당해 제1의 단방향 움직임 정보를 선택할 수 있고, 디코딩단에서는 다시 알고리즘을 이용하지 않고도 제1의 양방향 움직임 정보로부터 제1의 단방향 움직임 정보를 선택하는 것을 구현할 수 있다.
만약 코딩단이 상기에서 언급한 기설정 규칙에 따른 방식으로 제1의 양방향 움직임 정보로부터 제1의 단방향 움직임 정보를 선택한다면, 디코딩단도 동일한 기설정 규칙에 따라 제1의 양방향 움직임 정보로부터 제1의 단방향 움직임 정보를 선택할 수 있다.
물론, 설사 코딩단이 상기에서 언급한 기설정 규칙에 따른 방식으로 제1의 양방향 움직임 정보로부터 제1의 단방향 움직임 정보를 선택한다고 해도, 코딩단은 여전히 당해 제1의 단방향 움직임 정보의 식별자를 코딩된 코드 스트림에 기입하여, 디코딩단이 당해 제1 식별자에 따라, 제1의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하여 제1의 단방향 움직임 정보로 하도록 할 수 있다.
본 출원의 실시예에서는, 제1의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하는 방식으로 제1의 단방향 움직임 정보를 얻을 수 있을 뿐만 아니라, 제1의 양방향 움직임 정보를 병합 처리하여 제1의 단방향 움직임 정보를 얻을 수도 있다.
본 출원의 실시예에서는, 양방향 움직임 정보에 포함된 2개의 움직임 정보가 서로 다른 기준 프레임에 속할 수 있으므로, 상기 제1의 양방향 움직임 정보를 병합 처리하기 전에, 상기 제1의 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보를 토대로 스케일링할 수 있다. 여기서, 병합 처리된 후의 움직임 정보의 기준 프레임은 당해 다른 하나의 움직임 정보가 가리키는 기준 프레임일 수 있다.
구체적인 스케일링 프로세스는 도 5에 나타낸 바와 같을 수 있으며, 프레임 0은 현재 프레임을 나타내고, 프레임 1은 움직임 정보 1(MV1일 수 있음)이 가리키는 기준 프레임을 나타내고, 프레임 2는 다른 하나의 움직임 정보 2(MV2일 수 있음)가 가리키는 기준 프레임을 나타내며, 화상 서브 블록 0은 현재 서브 화상 블록을 나타내고, 화상 서브 블록 1은 움직임 정보 1이 가리키는 예측 서브 블록 1을 나타내며, 화상 서브 블록 2는 다른 하나의 움직임 정보 2가 가리키는 예측 서브 블록 2를 나타내며, 만약 움직임 정보 1을 움직임 정보 2에 기반하여 스케일링한다면, 당해 움직임 정보 1을 점선 위치로 스케일링할 수 있다.
움직임 정보가 MV인 것으로 가정하면, 스케링된 후의 MV1=스케일링 전의 MV1×a/b이다. 여기서, a는 프레임 2와 프레임 0 사이의 시간 도메인 거리이고, b는 프레임 1과 프레임 0 사이의 시간 도메인 거리이다.
본 출원의 실시예에서 언급된 병합 처리는 가중 처리일 수 있으며, 평균 처리일 수도 있다.
선택적으로, 본 출원의 실시예에서 병합 처리가 가중 처리인 경우, 처리 기기는 상기 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 상기 제1의 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용할 수 있으며,
상기 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함한다.
하나의 구현형태에서, 제1 화상 블록의 크기는 제1 화상 블록의 폭과 높이를 포함할 수 있으며, 처리 기기는 제1 화상 블록의 폭과 높이에 따라 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정할 수 있다. 구체적으로 폭과 높이의 절대 수치, 및/또는, 폭과 높이 이들 양자 간의 비율에 따라 각각의 움직임 정보의 가중치를 결정할 수 있다.
예를 들면, 만약 제1 화상 블록의 폭과 높이가 모두 32개 픽셀보다 크다면, 제1의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제1의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치=2:1이다. 만약 제1 화상 블록의 폭과 높이는 모두 16개 픽셀보다 크고 32개 픽셀과 같거나 그보다 작으면, 제1의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제1의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치=1:1이다. 그밖의 다른 경우에는, 제1의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제1의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치=1:2이다.
예를 들면, 제1의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제1의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치=제1 화상 블록의 폭:제1 화상 블록의 높이이다.
다른 구현형태에서, 처리 기기는 제1 화상 블록 및/또는 그 인접 영역의 픽셀 값을 이용하여, 제1 화상 블록 및/또는 그 인접 영역의 수평, 수직, 45도(수평 방향과 45도 사이각을 형성) 방향, 135도(수평 방향과 135도 사이각을 형성) 방향 중의 어느 하나의 방향의 1차 또는 2차 구배를 연산하고, 구배 방향을 이용하여 텍스쳐 방향을 결정할 수 있다. 그후, 제1의 양방향 움직임 정보(예를 들면, 양방향 MV) 중의 상기 텍스쳐 방향에 더 근접하는 움직임 정보(단방향 MV)에 더 높은 가중치를 할당한다. 여기서, 이 부분에서 언급된 제1 화상 블록의 인접 영역은 제1 화상 블록의 주변 영역(제1 화상 블록과 인접하고 또한/또는 제1 화상 블록과 기설정 영역만큼 이격됨)일 수 있다. 예를 들면, 제1 화상 블록을 사각형으로 가정하면, 당해 인접 영역은 적어도 하나의 주변 영역일 수 있으며, 인접 영역의 크기는 처리 기기에 미리 설정될 수 있고, 다른 방식으로 얻을 수도 있다.
다른 구현형태에서, 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 개수와 제2 리스트에 속하는 움직임 정보의 개수의 비율에 따라, 제1의 양방향 움직임 정보에 포함된 각 움직임 정보의 가중치를 결정할 수 있다.
예를 들면, 제1 움직임 정보 후보 리스트 중의 이미 추가된 움직임 정보 중 리스트 0에 속하는 MV의 개수:제1 움직임 정보 후보 리스트 중의 이미 추가된 움직임 정보 중 리스트 1에 속하는 MV의 개수=제1의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제1의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치이다.
이상, 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하는 다양한 구현형태를 각각 설명했다. 그러나 이해해야 할 것은, 본 출원의 실시예는 그밖의 다른 구현형태를 통해, 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하는 것을 구현할 수도 있으며, 본 출원의 실시예는 이에 대해 구체적으로 한정하지 않는다. 당해 다양한 구현형태에서 어떤 구현형태를 이용할 것인지는 처리 기기에 미리 설정될 수 있다.
예를 들면, 첫 번째 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하는 방식으로 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하도록 처리 기기에 미리 설정된다.
여기서, 기설정 규칙에 따른 방식으로 제1의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택할 것인지, 아니면 연산 방식으로 제1의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택할 것인지는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
예를 들면, 제1의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 병합 처리하는 방식으로 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하도록 처리 기기에 미리 설정된다.
여기서, 평균 처리 방식을 이용할 것인지, 아니면 병합 처리 방식을 이용할 것인지는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
예를 들면, 제1의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 평균 처리하는 방식으로 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하도록 처리 기기에 미리 설정된다.
여기서, 평균 처리를 이용하는 경우, 리스트 0에 속하는 움직임 정보를 리스트 1에 기반하여 스케일링할 것인지, 아니면 리스트 1의 움직임 정보를 리스트 0에 기반하여 스케일링할 것인지는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
예를 들면, 제1의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 가중 처리하는 방식을 이용하여 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하도록 처리 기기에 미리 설정된다.
여기서, 가중 처리를 이용하는 경우, 리스트 0에 속하는 움직임 정보를 리스트 1에 기반하여 스케일링할 것인지, 아니면 리스트 1의 움직임 정보를 리스트 0에 기반하여 스케일링할 것인지는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
또는, 본 출원의 실시예에서, 하기 요소를 토대로 다수의 제1 방법으로부터, 제1의 양방향 움직임 정보를 제1의 단방향 움직임 정보로 조정하는 제1 조정 방법을 결정할 수 있다.
즉, 상기 요소는, 상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수이다.
여기서, 당해 다수의 제1 방법은,
1a) 상기 제1의 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 제1의 단방향 움직임 정보로 결정하는 방법;
2a) 상기 제1의 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 제1의 단방향 움직임 정보로 결정하는 방법;
3a) 상기 제1의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법;
4a) 상기 제1의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법;
5a) 상기 제1의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법;
6a) 상기 제1의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법;
중의 적어도 하나의 방법을 포함할 수 있다.
하나의 구현형태에서, 제1 화상 블록의 크기는 제1 화상 블록의 폭과 높이를 포함할 수 있고, 처리 기기는 제1 화상 블록의 폭과 높이에 따라 상기 방법 1a)~6a) 중의 어느 방법을 이용할 것인지를 결정할 수 있다. 구체적으로, 폭과 높이의 절대 수치, 및/또는 폭과 높이 이들 양자 사이의 비율에 따라 상기 방법 1a)~6a) 중의 어느 방법을 이용할 것인지를 결정할 수 있다.
예를 들면, 만약 제1 화상 블록의 폭과 높이가 모두 32개 픽셀보다 크다면, 방법 1a)를 이용할 수 있고; 만약 제1 화상 블록의 폭과 높이가 모두 16개 픽셀보다 작거나 그와 같다면, 방법 2a)를 이용할 수 있으며, 그밖의 다른 경우에는 방법 3a)~6a)를 이용할 수 있다.
예를 들면, 만약 제1 화상 블록의 폭:제1 화상 블록의 높이가 1보다 크다면, 방법 1a)를 이용하고, 1보다 작다면 방법 2a)를 이용하고, 1과 같다면, 방법 3a)~6a)를 이용할 수 있다.
다른 구현형태에서, 처리 기기는 제1 화상 블록 및/또는 그 인접 영역의 픽셀 값을 통해, 제1 화상 블록 및/또는 그 인접 영역의 수평, 수직, 45도, 135도 방향에서의 1차 또는 2차 구배를 연산하고, 구배 방향을 이용하여 텍스쳐 방향을 결정할 수 있다. 만약 텍스쳐 방향이 제1의 양방향 움직임 정보에 속하는, 제1 리스트에 속하는 움직임 정보에 더 근접한다면, 방법 1a)를 이용하고, 만약 텍스쳐 방향이 제1의 양방향 움직임 정보에 속하는, 제2 리스트에 속하는 움직임 정보에 더 근접한다면, 방법 2a)를 이용한다.
다른 구현형태에서, 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 개수와 제2 리스트에 속하는 움직임 정보의 비율에 따라, 제1의 양방향 움직임 정보에 포함된 각 움직임 정보의 가중치를 결정할 수 있다.
예를 들면, 만약 제1 리스트에 속하는 움직임 정보의 개수가 많다면, 방법 1a)를 이용하고, 제1 리스트에 속하는 움직임 정보의 개수가 적다면, 방법 2a)를 이용하고, 만약 개수가 마찬가지로 많다면 방법 3a) -6a)를 이용한다.
또는, 당해 다수의 제1 방법은,
1A) 제1의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하여 제1의 단방향 움직임 정보로 하는 방법;
1B) 제1의 양방향 움직임 정보를 병합 처리하여 제1의 단방향 움직임 정보를 얻는 방법;
중의 적어도 하나의 방법을 포함할 수 있다.
만약 상기에서 언급한 요소를 토대로 방법 1A)를 선택하여 제1 조정 방법으로 한다면, 제1의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하는 구현형태는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 요소를 토대로 결정될 수도 있다.
마찬가지로, 만약 상기에서 언급한 요소를 토대로 방법 1B)를 선택하여 제1 조정 방법으로 한다면, 제1 움직임 정보를 병합 처리하는 구현형태는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 요소를 토대로 결정될 수도 있다.
이해해야 할 것은, 방법 1A) 및/또는 방법 1B)는 각각 다양한 구체적인 구현 방법을 포함할 수도 있다. 예를 들면, 방법 1A)는 상기와 같이 제1의 양방향 움직임 정보에 대해 설명한 1a) 내지 2a)를 포함할 수 있고, 방법 1B)는 상기와 같이 제1의 양방향 움직임 정보에 대해 설명한 3a) 내지 6a)를 포함할 수 있다. 처리 기기가 방법 1A) 및/또는 방법 1B)를 선택할 수 있다는 것은, 방법 1A) 및/또는 방법 1B)에 포함된 구체적인 구현 방법을 선택하는 것으로 이해할 수 있다.
선택적으로, 본 출원의 실시예에서는, 현재 프레임의 서로 다른 화상 블록에 대하여, 상기 제1 방법 중의 서로 같은 방법을 이용하여 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 구현할 수 있다. 또는, 현재 프레임의 서로 다른 화상 블록에 대하여, 상기 제1 방법 중의 서로 같은 방법을 이용하여 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 구현할 수 있다.
선택적으로, 본 출원의 실시예에서는 현재 화상 블록의 서로 다른 서브 화상 블록에 대하여, 상기 제1 방법 중의 서로 같은 방법을 이용하여 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 구현할 수 있다. 또는, 현재 화상 블록의 서로 다른 서브 화상 블록에 대하여, 상기 제1 방법 중의 서로 같은 방법을 이용하여 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 구현할 수 있다.
본 출원의 실시예에서, 움직임 정보 후보 리스트(움직임 벡터 후보 리스트일 수 있으며, 예를 들어 상기에서 언급한 후보 리스트 a일 수 있음)로부터, 현재 화상 블록에 포함된 서브 화상 블록을 위해 움직임 정보를 선택하고, 만약 선택한 움직임 정보가 양방향 움직임 정보라면, 당해 양방향 움직임 정보를 단방향 움직임 정보로 조정하고, 조정된 단방향 움직임 정보를 토대로, 현재 화상 블록에 대해 인코딩 또는 디코딩을 수행할 수 있다. 이로써, 움직임 정보 후보 리스트로부터 양방향 움직임 정보를 선택하여 인코딩 또는 디코딩을 수행함에 따른 연산 복잡도 문제점을 피할 수 있고, 움직임 정보 후보 리스트의 구축 시, 모든 MV에 대해 편력하고, 양방향 MV에 대해 양방향 MV로부터 단방향 MV로의 재구성을 수행하고 재구성된 MV의 중복 여부를 판단함에 따른 복잡도가 높은 문제점을 피할 수 있으며, 인코딩 및 디코딩의 복잡도를 저감시킬 수 있다.
이상, 서브 화상 블록을 위해 선택한 움직임 정보가 제1의 양방향 움직임 정보인 경우 제1의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정할 수 있음을 설명했으나, 기설정 규칙에 따라 당해 제1의 양방향 움직임 정보를 처리하는 방식은 이에 한정되지 않는다. 이하 다른 구현형태를 설명하기로 한다.
선택적으로, 본 출원의 실시예에서, 제1의 양방향 움직임 정보는 제1의 타겟 양방향 움직임 정보를 포함한다. 당해 제1의 타겟 양방향 움직임 정보는 통상의 또는 일반적인 양방향 움직임 정보일 수 있으며, 어떤 유형 또는 어떤 특정의 제1의 양방향 움직임 정보일 수도 있고, 제1의 양방향 움직임 정보 중의 비교적 특별한 양방향 움직임 정보일 수도 있다. 서브 화상 블록을 위해 선택한 움직임 정보가 제1의 타겟 양방향 움직임 정보인 경우, 제1의 타겟 양방향 움직임 정보에 포함된 움직임 벡터의 정밀도를 조정할 수도 있다.
또는, 본 출원의 실시예에서는, 서브 화상 블록을 위해 움직임 정보를 선택하기 전에, 제1 움직임 정보 후보 리스트 중의 제1의 타겟 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터의 정밀도를 조정하거나, 또는 제1 움직임 정보 후보 리스트를 구축할 때, 제1의 타겟 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터의 정밀도를 조정할 수도 있다. 다시 말해, 상기 제1 움직임 정보 후보 리스트 중의 적어도 일부 움직임 정보에 대응되는 적어도 하나의 움직임 벡터 값의 정밀도는 변환을 거쳐 얻어진 것이다.
본 출원의 실시예에서, 움직임 벡터의 정밀도에 대한 변환은 움직임 벡터 값을 풀 픽셀의 화상 블록을 가리키는 움직임 벡터 값으로 조정하는 것으로 이해할 수 있거나, 또는 당해 움직임 벡터 값이 가리키는 화상 블록을 풀 픽셀의 화상 블록으로 조정하는 것으로 이해할 수도 있다.
이하, 양방향 움직임 벡터에 대해 정밀도 변환을 어떻게 수행하는지를 구체적으로 설명하기로 한다. 이하 설명되는 정밀도 변환은 제1 움직임 정보 후보 리스트로부터 선택한 제1의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값에 대해 정밀도 변환을 수행하는 데 이용할 수 있고, 제1 움직임 정보 후보 리스트를 구축할 때, 추가할 양방향 움직임 정보 중의 적어도 하나의 움직임 벡터에 대해 정밀도 변환을 수행하는 데 이용할 수도 있다. 또는, 서브 화상 블록을 위해 움직임 정보를 선택하기 전에, 제1 움직임 정보 후보 리스트 중의 적어도 하나의 양방향 움직임 정보 중 적어도 하나의 움직임 벡터 값에 대해 정밀도 변환을 수행하는 데 이용할 수도 있다.
움직임 예측 프로세스에서는, 자연 물체의 움직임의 연속성으로 인해, 서로 인접한 2개의 프레임 사이에서의 물체의 움직임 벡터는 반드시 정수 개의 픽셀 단위가 아닐 수 있다. 움직임 벡터의 정확도를 높이기 위해, HEVC에서는 휘도 성분의 움직임 예측에 대해 1/4 픽셀 정밀도의 움직임 벡터를 이용한다. 그러나 디지털 비디오는 부분 픽셀 위치의 샘플링 값이 존재하지 않으며, 일반적으로 1/K 픽셀 정밀도 예측을 구현하기 위해서는 반드시 이들 부분 픽셀 도트의 값을 근사 보간해야 한다. 즉 기준 프레임 화상의 행 방향과 열 방향에 대해 K배율의 보간을 수행하고, 보간된 후의 화상에서 탐색을 수행해야 한다. 제1 화상 블록에 대해 보간을 수행하는 프로세스는 제1 화상 블록 중의 픽셀 도트와 그 인접 영역의 픽셀 도트를 이용해야 한다.
1/4의 픽셀 보간 프로세스에서는 하나의 8×8/4×8/4×4/8×4 크기의 화상 블록에 대하여, 블록 외부 좌측의 3개 점과 우측의 4개 점을 이용하여 보간 도트의 픽셀 값을 생성하며, 도 7에 나타낸 바와 같다. 도 7은 본 출원의 실시예에 따른 픽셀 보간 예시도이다. 도 7에 나타낸 바와 같이, a0,0과 d0,0은 1/4 픽셀 도트이고, b0,0과 h0,0은 하프 픽셀 도트이며, c0,0과 n0,0은 3/4 픽셀 도트이다. 현재 화상 블록을 2×2의 블록 A0,0~A1,0, A0,0~A0,1로 둘러싸여진 2×2 블록으로 가정하면, 당해 2×2의 화상 블록 중의 모든 보간 도트를 연산하기 위해서는 2×2 외부의 일부 도트를 이용해야 하며, 이들 일부 도트는 좌측의 3개, 우측의 4개, 상측의 3개, 하측의 4개를 포함한다.
일 실시예에서, 처리 기기는 상기 제1 화상 블록의 크기에 따라, 상기 움직임 벡터 값의 정밀도를 변환하는 경우, 상기 제1 화상 블록의 크기가 제1 조건에 부합하는지를 판단할 수 있으며, 만약 판단 결과 부합한다고 하면, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 적어도 하나의 양방향 움직임 정보에 포함된 적어도 하나의 양방향 움직임 벡터 값을 풀 픽셀 정밀도로 변환한다. 이해해야 할 것은, 실제 적용 시에는 제1 화상 블록의 크기에 의존하지 않고 상응한 움직임 벡터 값의 정밀도에 대한 변환을 직접 수행할 수도 있다. 또는, 그밖의 다른 조건에 따라 상응한 움직임 벡터 값의 정밀도의 변환을 수행할 수도 있다.
일부 실시예에서, 상기 제1 조건에 부합한다는 것은 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트에 양방향 움직임 정보가 존재하고, 또한 상기 제1 화상 블록의 크기가 기설정 범위의 문턱값에 부합하는 것을 포함한다. 일부 실시예에서, 상기 기설정 범위의 문턱값에 부합한다는 것은 상기 제1 화상 블록의 크기가 64개 픽셀보다 크거나 그와 같은 것을 포함한다. 또는, 일부 실시예에서, 상기 기설정 범위의 문턱값에 부합한다는 것은 상기 제1 화상 블록의 크기가 16개 픽셀보다 크고 64개 픽셀보다 작은 것을 포함한다. 다른 실시예에서, 상기 기설정 범위의 문턱값은 그밖의 다른 범위 값을 포함할 수도 있으며, 본 출원의 실시예에서는 구체적으로 한정하지 않는다.
예를 들면, 상기 제1 화상 블록이 하나의 코드 단위(CU)이고 상기 코드 단위(CU)의 크기를 8×8로 가정하면, 상기 코드 단위(CU)의 크기 8×8은 64이다. 만약 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트에 양방향 움직임 정보가 존재하는 것으로 검출되면, 상기 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 모든 양방향 움직임 정보에 포함된 양방향 움직임 벡터 값(본 출원의 실시예 중의 양방향 움직임 벡터 값은 양방향 예측된 움직임 벡터 값이라고도 할 수 있음)의 정밀도를 변환할 수 있다. 여기서, 모든 양방향 움직임 정보에 포함된 양방향 움직임 벡터 값의 정밀도를 풀 픽셀 정밀도로 변환할 수 있다. 이해해야 할 것은, 제1 움직임 정보 후보 리스트에 다수의 제1의 양방향 움직임 정보가 포함된 경우, 제1의 양방향 움직임 정보 중의 일부 양방향 움직임 정보, 예를 들면 제1의 타겟 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값의 정밀도에 대해서만 변환을 수행할 수 있다.
만약 종래의 삼각형 예측 모드를 이용한다면, 현재 삼각형 예측이 W×H≥64(W는 CU의 픽셀 폭을 나타내고, H는 CU의 픽셀 높이를 나타냄)의 CU에 대해서만 수행되고, 현재 삼각형 예측이 W×H≥64의 CU에만 이용되므로, 대역폭 소모와도 관련된다. 도 8을 예로 들면, 도 8은 종래기술에서 제공되는 삼각형 예측에 따른 처리 코드 단위의 예시도이며, HEVC의 최악의 경우(1/4 픽셀 정밀도 MV)가 8×8인 것을 가정한 경우의 양방향 프레임간 예측 CU이며, 기준 픽셀 도트는 (8+7)×(8+7)×2=450이다. VVC(Versatile Video Coding)의 삼각형 예측의 경우, 만약 최소 처리 CU를 4×4로 설정한다면, 최악의 경우(1/4픽셀 정밀도 MV)의 4×4 양방향 프레임간 예측 CU는 기준 픽셀 도트 수가 (4+7)×(4+7)×2×4=968이며, HEVC에 비해 VVC는 115% 증가하여, 비교적 큰 대역폭 압력을 초래한다. 또 예를 들면, 만약 삼각형 예측에 따른 최소 처리 CU를 4×8 또는 8×4로 설정한다면, HEVC의 최악의 경우(1/4픽셀 정밀도 MV)가 8×8인 양방향 프레임간 예측 CU는 기준 픽셀 도트가 (8+7)×(8+7)×2=450이다. VVC의 삼각형 예측의 경우, 만약 최소 처리 CU를 4×8/8×4로 설정한다면, 최악의 경우(1/4 픽셀 정밀도 MV)의 4×8/8×4 양방향 프레임간 예측된 CU는 기준 픽셀 도트 수가 (8+7)×(4+7)×2×4=660이며, HEVC에 비해 VVC는 47% 증가하며, 이 역시 비교적 큰 대역폭 압력을 초래한다.
따라서, 본 출원의 실시예에서 이와 같은 삼각형 예측 모드에 의한 양방향 예측을 허용하고, 또한 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값에 대한 풀 픽셀 정밀도 변환을 허용함으로써 대역폭 압력을 저감시키고 대역폭 이용률을 향상시킨다.
일 실시예에서, 만약 처리 기기가 상기 제1 화상 블록이 상기 제1 조건에 부합하지 않는 것으로 판단하면, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다.
예를 들면, 상기 제1 화상 블록이 하나의 코드 단위(CU)이고, 상기 코드 단위(CU)의 크기가 4×8인 것으로 가정하면, 상기 코드 단위(CU)의 크기 4×8은 32이고, 32는 64보다 작으며, 상기 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다.
본 출원의 실시예에 따른, 이와 같이 상기 제1 조건에 부합하지 않는 제1 화상 블록의 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환하는 것을 통해, 종래의 삼각형 예측 모드에서 64개 픽셀보다 크거나 그와 같은 화상 블록에만 이용한다는 한정을 피할 수 있어, 비디오의 인코딩 및 디코딩 성능을 향상시킨다.
일 실시예에서, 상기 움직임 벡터 값은 수평 성분과 수직 성분을 포함하며; 상기 처리 기기는 상기 움직임 벡터 값의 정밀도를 변환하는 경우에, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트에 포함된 움직임 벡터 값의 수평 성분과 수직 성분을 획득하고 상기 움직임 벡터 값의 수평 성분과 수직 성분을 풀 픽셀 정밀도로 변환할 수 있다.
일 실시예에서, 상기 처리 기기는 상기 움직임 벡터 값의 수평 성분과 수직 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 움직임 벡터 값의 저장 정밀도에 따라 변환 계수(s)를 결정하고, 제1 기설정 변환 규칙과 상기 변환 계수(s)를 이용하여, 상기 움직임 벡터 예측값의 수평 성분을 풀 픽셀 정밀도로 변환하고; 또한 제2 기설정 변환 규칙과 상기 변환 계수(s)를 이용하여, 상기 운동 벡터 예측 값의 수직 성분을 풀 픽셀 정밀도로 변환할 수 있다.
어떤 실시예에서, 상기 변환 계수(s)와 상기 움직임 벡터 값의 저장 정밀도 사이의 관계는 예를 들어 설명할 수 있으며, 상기 움직임 벡터 값의 저장 정밀도를 1/m로 가정하면, m=2n의 경우, s=n로 결정할 수 있다. 예를 들면, 상기 움직임 벡터 값의 저장 정밀도를 1/16=1/24로 가정하면 상기 변환 계수를 4로 결정할 수 있다.
일 실시예에서, 상기 처리 기기는 제1 기설정 변환 규칙과 상기 변환 계수(s)를 이용하여, 상기 움직임 벡터 예측 값의 수평 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 수평 성분이 0보다 크거나 그와 같은지를 판단하고, 만약 상기 수평 성분이 0보다 크거나 그와 같은 것으로 판단하면, 상기 변환 계수(s)와 1의 차를 좌측으로 1비트 이동시켜 제1 시프트 값을 얻고, 상기 제1 시프트 값과 상기 수평 성분의 합을 우측으로 s비트 이동시켜 제2 시프트 값을 얻으며, 또한 상기 제2 시프트 값을 좌측으로 s비트 이동시켜 상기 수평 성분의 풀 픽셀 정밀도를 얻을 수 있다.
일부 실시예에서, 상기 수평 성분이 0보다 크거나 그와 같은 경우, 상기 수평 성분이 MV1x이고, 상기 수평 성분의 풀 픽셀 정밀도를 MV2x로 가정하면, 상기 제1 기설정 변환 규칙은,
만약 MV1x>=0이면 MV2x =((MV1x+(1<<(s-1))) >>s) <<s인 것을 포함한다.
여기서, 상기 “<<”는 좌측 이동을 의미하고, 상기 “>>”는 우측 이동을 의미하며, 상기 “1<<(s-1) ”은 제1 시프트 값을 의미하고, 상기 “(MV1x+(1<<(s-1))) >>s”는 제2 시프트 값을 의미한다. 어떤 실시예에서는, 만약 MV1x가 좌측으로 n비트 이동하면, MV1x에 2n을 곱하는 것을 의미하고, 만약 MV1x가 우측으로 n비트 이동하면, MV1x를 2n으로 나눈 후 나머지 값을 계산하지 않고 얻은 상을 의미하며, n은 1보다 크거나 그와 같은 양의 정수이다.
예를 들면, 상기 움직임 벡터 값의 저장 정밀도를 1/4로 가정하면, 상기 처리 기기는 상기 변환 계수(s)를 2로 결정할 수 있고, 만약 상기 수평 성분 MV1x가 3이고, 이진수가 “11”이고, 그 수평 성분 MV1x가 0보다 크다면, MV2x의 연산 프로세스는 아래와 같다.
“s-1”을 연산: s = 2이면 s-1=2-1=1이다.
“1<<(s-1) ”을 연산: 1<<1의 결과의 이진수는 10이고, 십진수는 2이다.
“MV1x+(1<<(s-1))”을 연산: MV1x=3이면 MV1x+(1<<(s-1))=11+10=101이다.
“(MV1x+(1<<(s-1))) >>s”를 연산: 이전 결과에 따라 5의 이진수 101을 우측으로 2비트 이동시켜 101>>2=1을 획득한다.
마지막으로 “((MV1x+(1<<(s-1))) >>s) <<s”를 연산하면, MV2x =1<<2=100이다.
이로부터 알 수 있듯이, 상기 프로세스에서 상기 처리 기기는 상기 변환 계수 2와 1의 차인 1을 좌측으로 1비트 이동시켜 제1 시프트 값 2를 얻고, 상기 제1 시프트 값 2와 상기 수평 성분 3의 합인 5를 우측으로 2비트 이동시켜 제2 시프트 값 1을 얻으며, 상기 제2 시프트 값 1을 좌측으로 2비트 이동시켜 상기 수평 성분의 풀 픽셀 정밀도 MV2x를 4로 얻을 수 있다.
다른 실시예에서, 상기 수평 성분이 0보다 크거나 그와 같은 경우, 상기 제1 기설정 변환 규칙은 상기 변환 규칙을 포함하나 이에 한정되지 않으며, 다른 변환 규칙을 포함할 수도 있으며, 상기 수평 성분을 풀 픽셀로 변환하면 된다. 예를 들면, 상기 제1 기설정 변환 규칙은 아래와 같을 수도 있다.
MV1x>=0의 경우, 만약 MV1x>=0이면, MV2x =(MV1x >> s) << s이다.
예를 들면, 상기 움직임 벡터 값의 저장 정밀도를 1/4로 가정하면, 상기 처리 기기는 상기 변환 계수(s)를 2로 결정할 수 있으며, 만약 상기 수평 성분 MV1x가 5이고, 이진수가 “101”이면, 상기 수평 성분 MV1x는 0보다 크며, MV2x의 연산 프로세스는 아래와 같다.
“MV1x >> s”를 연산: MV1x=5이면, 5 >> 2의 결과의 이진수는 001이고 십진수는 1이다.
“(MV1x >> s) << s”를 연산: MV2x =1<< 2의 결과의 이진수는 100이고, 십진수는 4이다.
이로부터 알 수 있듯이, 상기 프로세스에서 상기 처리 기기는 상기 MV1x인 5를 우측으로 2비트 이동시켜 1을 얻고, 다시 1을 좌측으로 2비트 이동시켜 상기 수평 성분의 풀 픽셀 정밀도 MV2x를 4로 얻을 수 있다.
일부 실시예에서, 상기 처리 기기는 만약 상기 수평 성분이 0보다 작은 것으로 판단하면, 상기 제1 시프트 값과 상기 수평 성분의 차를 우측으로 s비트 이동시켜 제3 시프트 값을 얻고, 상기 제3 시프트 값을 좌측으로 s비트 이동시키고 그 반수(Opposite number)를 취해 상기 수평 성분의 풀 픽셀 정밀도를 얻을 수 있다. 어떤 실시예에서는, 상기 수평 성분이 0보다 작은 경우, 상기 수평 성분을 MV1x로, 상기 수평 성분의 풀 픽셀 정밀도를 MV2x로 가정하면, 상기 제1 기설정 변환 규칙은,
만약 MV1x<0이면, MV2x = -((-MV1x+(1<<(s-1))) >>s) <<s인 것을 포함한다.
여기서, 상기 “<<”는 좌측 이동을 의미하고, 상기 “>>”는 우측 이동을 의미하며, 상기 “-MV1x”는 MV1x에 대해 반수를 취하는 것을 의미하고, 상기 “(-MV1x+(1<<(s-1))) >>s”는 제3 시프트 값을 의미한다.
예를 들면, 상기 움직임 벡터 값의 저장 정밀도를 1/4로 가정하면, 상기 처리 기기는 상기 변환 계수(s)를 2로 결정할 수 있으며, 만약 상기 수평 성분 MV1x가 -7이면, 상기 수평 성분 MV1x는 0보다 작고, MV2x의 연산 프로세스는 아래와 같다.
“s-1”을 연산: s = 2이면, s-1=2-1=1이다.
“1<<(s-1) ”을 연산: 1<<1의 결과의 이진수는 10이고 십진수는 2이다.
“-MV1x+(1<<(s-1))”을 연산: MV1x=-7이면-MV1x+(1<<(s-1))=111+10=1001이다.
“(-MV1x+(1<<(s-1)))>>s”를 연산: 이전 결과에 따라 9의 이진수 1001을 우측으로 2비트 이동시켜 1001>>2=2를 얻는다.
마지막으로 “-((-MV1x+(1<<(s-1)))>>s) <<s”를 연산하면, MV2x =-2<<2=-8이다.
이로부터 알 수 있듯이, 상기 프로세스에서 상기 처리 기기는 상기 변환 계수 2와 1의 차인 1을 좌측으로 1비트 이동시켜 제1 시프트 값인 2를 얻고, 상기 수평 성분인 -7에 대해 반수를 취해 7을 얻으며, 상기 제1 시프트 값 2와 7의 합인 9를 우측으로 2비트 이동시켜 제3 시프트 값인 2를 얻고, 상기 제3 시프트 값인 2를 좌측으로 2비트 이동시키고 그 반수를 취해 상기 수평 성분의 풀 픽셀 정밀도 MV2x를 -8로 얻을 수 있다.
다른 실시예에서, 상기 수평 성분이 0보다 작은 경우, 상기 제1 기설정 변환 규칙은 상기 변환 규칙을 포함하나 이에 한정되지 않으며, 다른 규칙일 수도 있으며, 상기 수평 성분을 풀 픽셀로 변환하면 된다. 예를 들면, 상기 제1 기설정 변환 규칙은,
만약 MV1x < 0이면, MV2x = -(((-MV1x) >> s) << s)일 수도 있다.
예를 들면, 상기 움직임 벡터 값의 저장 정밀도를 1/4로 가정하면, 상기 처리 기기는 상기 변환 계수(s)를 2로 결정할 수 있으며, 만약 상기 수평 성분 MV1x가 -5이면, 상기 수평 성분 MV1x는 0보다 작고, MV2x의 연산 프로세스는 아래와 같다.
“-MV1x >> s”를 연산: MV1x=-5이면, 5 >> 2의 결과의 이진수는 001이고 십진수는 1이다.
“(-MV1x >> s) << s”를 연산: 1<< 2의 결과의 이진수는 100이고 십진수는 4이다.
“-(((-MV1x) >> s) << s) ”를 연산하면 MV2x =-4이다.
이로부터 알 수 있듯이, 상기 프로세스에서, 상기 처리 기기는 상기 MV1x인 -5에 대해 반수를 취하여 5를 얻고, 5를 우측으로 2비트 이동시켜 1을 얻으며, 다시 1을 좌측으로 2비트 이동시켜 상기 수평 성분의 풀 픽셀 정밀도 MV2x를 -4로 얻을 수 있다.
일 실시예에서, 상기 처리 기기는 제2 기설정 변환 규칙과 상기 변환 계수(s)를 이용하여, 상기 움직임 벡터 예측 값의 수직 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 수직 성분이 0보다 크거나 그와 같은지를 판단할 수 있으며, 만약 상기 수직 성분이 0보다 크거나 그와 같으면, 상기 변환 계수(s)와 1의 차를 좌측으로 1비트 이동시켜 제4 시프트 값을 얻고, 상기 제4 시프트 값과 상기 수직 성분의 합을 우측으로 s비트 이동시켜 제5 시프트 값을 얻으며, 또한 상기 제5 시프트 값을 좌측으로 s비트 이동시켜 상기 수직 성분의 풀 픽셀 정밀도를 얻을 수 있다. 어떤 실시예에서는, 상기 수직 성분이 0보다 크거나 그와 같은 경우, 상기 수직 성분을 MV1y로 가정하고, 상기 수직 성분의 풀 픽셀 정밀도를 MV2y로 가정하면, 상기 제2 기설정 변환 규칙은,
만약 MV1y>=0이면, MV2y =((MV1y +(1<<(s-1))) >>s) <<s인 것을 포함할 수 있다.
여기서, 구체적인 실시예의 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
다른 실시예에서, 상기 수직 성분이 0보다 크거나 그와 같은 경우, 상기 제2 기설정 변환 규칙은 상기 변환 규칙을 포함하나 이에 한정되지 않으며, 다른 규칙일 수도 있으며, 상기 수직 성분을 풀 픽셀로 변환하면 된다. 예를 들면, 상기 제2 기설정 변환 규칙은,
만약 MV1y>=0이면, MV2y =(MV1y >>s) << s일 수도 있다.
여기서, 구체적인 실시예의 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
일 실시예에서, 상기 처리 기기는 만약 상기 수직 성분이 0보다 작은 것으로 판단하면, 상기 제4 시프트 값과 상기 수직 성분의 차를 우측으로 s비트 이동시켜 제6 시프트 값을 얻고, 상기 제6 시프트 값을 좌측으로 s비트 이동시키고 그 반수를 취해 상기 수직 성분의 풀 픽셀 정밀도를 얻을 수 있다. 어떤 실시예에서는, 상기 수직 성분이 0보다 작은 경우, 상기 수직 성분을 MV1y로 가정하고, 상기 수직 성분의 풀 픽셀 정밀도를 MV2y로 가정하면, 상기 제2 기설정 변환 규칙은,
만약 MV1y < 0이면, MV2y = -((-MV1y +(1<<(s-1))) >>s) <<s인 것을 포함한다.
다른 실시예에서, 상기 수직 성분이 0보다 작은 경우, 상기 제2 기설정 변환 규칙은 상기 변환 규칙을 포함하나 이에 한정되지 않으며, 다른 규칙일 수도 있으며, 상기 수직 성분을 풀 픽셀로 변환하면 된다. 예를 들면, 상기 제2 기설정 변환 규칙은,
만약 MV1y < 0이면, MV2y = -(((-MV1y) >> s) << s)일 수도 있다.
여기서, 구체적인 실시예의 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
일 실시예에서, 상기 움직임 벡터 값은 수평 성분을 포함하고; 상기 처리 기기는 상기 움직임 벡터 값의 정밀도를 변환하는 경우, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트에 포함된 움직임 벡터 값(당해 움직임 벡터 값은 제1 움직임 정보 후보 리스트 중의 일부 움직임 벡터 값일 수도 있고, 전체 움직임 벡터 값일 수도 있으며, 기설정 조건에 부합하는 움직임 벡터 값일 수도 있음)의 수평 성분을 획득하고, 상기 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환할 수 있다. 구체적인 실시예의 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
일 실시예에서, 상기 움직임 벡터 값은 수직 성분을 포함하고; 상기 처리 기기는 상기 움직임 벡터 값의 정밀도를 변환하는 경우, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트에 포함된 움직임 벡터 값(당해 움직임 벡터 값은 제1 움직임 정보 후보 리스트 중의 일부 움직임 벡터 값일 수도 있고, 전체 움직임 벡터 값일 수도 있으며, 기설정 조건에 부합하는 움직임 벡터 값일 수도 있음)의 수직 성분을 획득하고, 상기 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환할 수 있다. 구체적인 실시예의 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
만약 종래의 삼각형 예측 모드를 이용하여, 삼각형 예측에서 최소 처리되는 CU를 4×8 또는 8×4로 설정한다면, 도 9에 나타낸 바와 같다. 도 9는 종래기술에서 제공되는 또 다른 삼각형 예측에 따른 처리 코드 단위의 예시도이며, HEVC의 최악의 경우(1/4 픽셀 정밀도 MV)가 8×8인 것으로 가정한 경우의 양방향 프레임간 예측 CU이며, 기준 픽셀 도트는 (8+7)×(8+7)×2=450이다. VVC의 삼각형 예측의 경우, 만약 최소 처리 CU를 4×8/8×4로 설정한다면, 최악의 경우(1/4픽셀 정밀도 MV)의 4×8/8×4 양방향 프레임간 예측 CU는, 기준 픽셀 도트 수가 (8+7)×(4+7)×2×4=660이며, HEVC에 비해 VVC는 47% 증가하여 이 역시 비교적 큰 대역폭 압력을 초래한다.
따라서, 본 출원의 실시예에서 이와 같이 양방향 움직임 정보에 포함된 양방향 움직임 벡터 값에 대해 풀 픽셀 정밀도 변환을 수행하는 방식을 통해, 대역폭 압력을 저감시키고 대역폭 이용률을 향상시킨다.
일 실시예에서, 상기 처리 기기는 상기 제1 화상 블록의 크기에 따라 상응한 움직임 벡터 값의 정밀도를 변환한 후, 정밀도가 변환된 움직임 벡터 값을 토대로 상기 현재 화상의 제1 움직임 정보 후보 리스트를 재구축할 수도 있다. 이로써, 상기 처리 기기가 움직임 정보 후보 리스트의 호출 명령을 수신한 후, 직접 상기 후보 운동 정보 리스트 중의, 풀 픽셀 정밀도가 변환된 후의 움직임 벡터 값을 호출함으로써 비디오의 인코딩 또는 디코딩 효율을 향상시킬 수 있다. 또는, 재구축 프로세스가 없는 경우에는, 제1 움직임 정보 후보 리스트를 구축할 때, 제1 움직임 정보 후보 리스트에 추가되는 적어도 일부 움직임 정보에 대해 정밀도 변환을 수행함으로써, 제1 움직임 정보 후보 리스트 중의 적어도 일부 움직임 정보에 대응되는 움직임 벡터 값의 정밀도가 변환을 통해 얻어진 것이 되도록 할 수 있다. 다시 말해 이미 정밀도 조정이 수행된 것이 되도록 할 수 있다.
이해해야 할 것은, 제1 움직임 정보 후보 리스트 중의 움직임 정보에 대해서는, 양방향 움직임 정보 및/또는 단방향 움직임 정보를 포함하는지와는 무관하게, 제1 움직임 정보 후보 리스트 중의 적어도 일부 움직임 정보에 대응되는 움직임 벡터 값의 정밀도를 변환함으로써 비디오의 인코딩 및 디코딩 성능을 향상시킬 수 있다. 특히 양방향 움직임 정보에 대하여, 그에 대응되는 양방향 움직임 벡터 값에 대해 정밀도 변환을 수행하는 것은 당해 양방향 움직임 벡터 값을 하나의 단방향 움직임 정보로 조정할 필요가 없으며, 예컨대 상기 후보 리스트 a로부터 후보 리스트 b로의 재구성을 수행하지 않아도 되며, 제1 움직임 정보 후보 리스트의 구축 프로세스를 간소화하고 처리 복잡도도 저감시킨다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 움직임 정보 후보 리스트를 획득하고, 상기 제1 화상 블록의 크기에 따라 상기 움직임 정보 후보 리스트 중의 움직임 벡터 값의 정밀도를 변환하여, 정밀도가 변환된 움직임 정보 후보 리스트를 토대로 비디오의 인코딩 또는 디코딩을 수행할 수 있다. 이러한 구현형태를 통해 대역폭 이용률을 향상시키고, 인코딩 또는 디코딩 동작을 간소화하여 인코딩 또는 디코딩의 효율을 향상시킬 수 있다.
나아가, 상응한 움직임 벡터 값의 호출 명령에 따라 그 정밀도를 변환할 수 있으며, 구체적으로 아래와 같은 단계를 포함한다.
A1: 코드 스트림으로부터 제1 화상 블록의 움직임 정보 후보 리스트를 획득한다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득할 수 있으며, 상기 제1 움직임 정보 후보 리스트는 움직임 벡터 값을 포함한다. 구체적인 실시예와 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
B1: 상기 제1 화상 블록의 크기를 획득한다.
본 출원의 실시예에서, 처리 기기는 상기 제1 화상 블록의 크기를 획득할 수 있다. 어떤 실시예에서, 상기 제1 화상 블록은 하나의 코드 단위(CU)일 수 있으며, 어떤 실시예에서, 상기 제1 화상 블록의 크기는 하나의 코드 단위(CU)의 폭과 높이로 구성될 수 있다. 즉 상기 제1 화상 블록의 크기는 W×H일 수 있다.
C1: 상기 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 호출 명령을 수신한 경우, 상기 제1 화상 블록의 크기에 따라 상기 움직임 벡터 값의 정밀도를 변환한다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득한 후, 상기 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 호출 명령을 수신한 경우에 상기 제1 화상 블록의 크기에 따라 상기 움직임 벡터 값의 정밀도를 변환할 수 있다. 어떤 실시예에서, 상기 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값을 사용할 것을 요청하는 그밖의 다른 호출 요청을 수신한 경우에, 상기 움직임 벡터 값의 정밀도를 변환할 수도 있다. 이해해야 할 것은, 제1의 양방향 움직임 정보는 제1의 타겟 양방향 움직임 정보를 포함할 수 있고, 당해 제1의 타겟 양방향 움직임 정보는 제1의 양방향 움직임 정보일 수도 있고, 제1의 양방향 움직임 정보 중의 어느 하나의 유형 또는 어느 하나의 특정된 양방향 움직임 정보일 수도 있다. 당해 호출 명령은 제1의 타겟 양방향 움직임 정보에 포함된 양방향 움직임 벡터 값의 정밀도 변환을 지시하기 위한 것일 수도 있고, 제1의 타겟 양방향 움직임 정보를 제외한 양방향 움직임 정보 또는 단방향 움직임 정보에 대응되는 움직임 벡터 값의 정밀도 변환을 지시하기 위한 것일 수도 있다.
이와 같은, 제1 움직임 정보 후보 리스트를 호출하는 경우 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값에 대해 풀 픽셀 변환을 수행하는 실시형태를 통해, 필요에 따라 움직임 벡터 값에 대해 풀 픽셀 변환을 수행하는 것을 구현할 수 있다.
일 실시예에서, 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 호출 명령을 수신한 경우에, 상기 제1 화상 블록의 크기가 제1 조건에 부합하는지를 판단할 수 있으며; 만약 부합한다면, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 적어도 하나의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다. 구체적인 실시예의 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
일 실시예에서, 처리 기기는 만약 상기 제1 화상 블록이 상기 제1 조건에 부합하지 않는 것으로 판단하면, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환한다. 구체적인 실시예의 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득하고, 상기 제1 화상 블록의 크기를 획득할 수 있으며, 상기 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 호출 명령을 수신한 경우에, 상기 제1 화상 블록의 크기에 따라 상기 움직임 벡터 값의 정밀도를 변환할 수 있다. 이와 같은, 제1 움직임 정보 후보 리스트를 호출하는 경우에 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값에 대해 풀 픽셀 변환을 수행하는 실시형태를 통해, 필요에 따라 움직임 벡터 값에 대해 풀 픽셀 변환을 수행하는 것을 구현할 수 있으며, 이로써 대역폭의 이용률을 향상시키고, 인코딩 또는 디코딩 동작을 간소화하여 인코딩 또는 디코딩의 효율을 향상시킴과 동시에 사용자의 경험을 향상시킬 수 있다.
또한, 본 출원의 실시예는 제1 타겟 양방향 움직임 정보 중의 임의의 하나의 움직임 벡터 값의 정밀도를 풀 픽셀 정밀도로 변환하는 것일 수 있으며, 구체적으로 아래와 같은 단계를 포함한다.
A2: 코드 스트림으로부터 제1 화상 블록의 움직임 정보 후보 리스트를 획득한다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득할 수 있다. 구체적인 실시예와 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
B2: 상기 제1 화상 블록의 크기가 제2 조건에 부합하는지를 판단하고, 만약 부합한다면 단계 C2를 수행하고 부합하지 않는다면 단계 D2를 수행한다.
본 출원의 실시예에서, 처리 기기는 상기 제1 화상 블록의 크기가 제2 조건에 부합하는지를 판단하고, 만약 판단 결과 부합한다고 하면 단계 C2를 수행하고, 만약 판단 결과 부합하지 않는다고 하면 단계 D2를 수행할 수 있다. 어떤 실시예에서, 상기 제2 조건은 상기 제1 화상 블록에 적어도 2개의 양방향 움직임 벡터가 존재하고, 또한 상기 제1 화상 블록의 크기가 기설정 범위의 문턱값에 부합한다는 것을 포함한다. 어떤 실시예에서, 상기 기설정 범위의 문턱값에 부합한다는 것은 상기 제1 화상 블록의 크기가 64개 픽셀보다 크거나 그와 같거나; 또는, 상기 제1 화상 블록의 크기가 16개 픽셀보다 크고 64개 픽셀보다 작은 것을 포함한다. 구체적인 실시예와 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
C2: 상기 제1 화상 블록의 움직임 정보 후보 리스트 중의 적어도 하나의 양방향 움직임 정보에 포함된 임의의 하나의 움직임 벡터 값을 풀 픽셀 정밀도로 변환한다.
본 출원의 실시예에서, 처리 기기는 만약 상기 제1 화상 블록의 크기가 제2 조건에 부합하는 것으로 판단하면, 상기 제1 화상 블록의 움직임 정보 후보 리스트 중의 적어도 하나의 양방향 움직임 정보에 포함된 임의의 하나의 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다.
일 실시예에서, 상기 처리 기기는 상기 제1 화상 블록의 움직임 정보 후보 리스트 중의 양방향 움직임 벡터 중의 임의의 하나의 움직임 벡터 값을 풀 픽셀 정밀도로 변환하기 전에, 상기 제1 화상 블록의 움직임 정보 후보 리스트에 적어도 하나의 양방향 움직임 정보가 존재하는지를 검출할 수 있으며, 만약 상기 움직임 정보 후보 리스트에 적어도 하나의 양방향 움직임 정보가 존재하는 것으로 검출되면, 상기 처리 기기는 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 적어도 하나의 양방향 움직임 정보에 포함된 임의의 하나의 움직임 벡터 값을 풀 픽셀 정밀도로 변환하는 단계를 수행할 수 있다.
예를 들면, 상기 제1 화상 블록이 하나의 코드 단위(CU)이고, 상기 코드 단위(CU)의 크기가 8×8인 것으로 가정하면, 상기 코드 단위(CU)의 크기 8×8은 64와 같다. 만약 상기 제1 화상 블록의 움직임 정보 후보 리스트에 하나의 양방향 움직임 정보가 존재하는 것으로 검출되면, 상기 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 적어도 하나의 양방향 움직임 정보에 포함된 임의의 하나의 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다.
본 출원의 당해 실시형태는, 양방향 움직임 정보에 포함된 임의의 하나의 움직임 벡터 값에 대해 풀 픽셀 정밀도 변환을 수행함으로써, 대역폭 압력을 어느 정도 저감시키고 대역폭 이용률을 향상시킨다.
D2: 상기 제1 화상 블록의 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환한다.
본 출원의 실시예에서, 처리 기기는 만약 상기 제1 화상 블록의 크기가 제2 조건에 부합하지 않는 것으로 판단하면, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다. 구체적인 실시예와 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
예를 들면, 상기 제1 화상 블록이 하나의 코드 단위(CU)이고 상기 코드 단위(CU)의 크기가 4×8인 것으로 가정하면, 상기 코드 단위(CU)의 크기 4×8은 32이고, 32는 64보다 작으며, 상기 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다.
이와 같은, 제2 조건에 부합하지 않는 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환하는 것을 통해, 종래의 삼각형 예측 모드에서 64개 픽셀보다 크거나 그와 같은 화상 블록에만 이용한다는 한정을 피할 수 있으며, 삼각형 예측 모드의 성능을 향상시킬 수 있다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득하고, 상기 제1 화상 블록의 크기가 제2 조건에 부합하는지를 판단할 수 있으며, 만약 부합한다면 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 적어도 하나의 양방향 움직임 정보에 포함된 임의의 하나의 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다. 만약 부합하지 않는다면, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환할 수 있다. 이와 같은 실시형태를 통해, 대역폭 이용률을 어느 정도 향상시키고, 인코딩 또는 디코딩 동작을 간소화하여 인코딩 또는 디코딩의 효율을 향상시킨다.
이하 실시예는 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환하는 이와 같은 실시 프로세스에 대해 예시적 설명을 한 것이다. 구체적으로, 본 출원의 실시예에 따른 상기 방법은 아래와 같은 단계를 포함한다.
A3: 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득한다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득할 수 있으며, 구체적인 실시예와 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
B3: 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수평 성분을 획득한다.
본 출원의 실시예에서, 처리 기기는 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수평 성분을 획득할 수 있다.
C3: 상기 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환한다.
본 출원의 실시예에서, 처리 기기는 상기 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환할 수 있다.
일 실시예에서, 상기 처리 기기는 상기 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수평 성분을 획득하고, 상기 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환할 수 있다.
어떤 실시예에서, 상기 처리 기기는 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 양방향 움직임 벡터 값을 풀 픽셀 정밀도로 변환하는 경우, 상기 양방향 움직임 벡터 값의 수평 성분을 획득하고, 상기 양방향 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환할 수 있다.
어떤 실시예에서, 상기 처리 기기는 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환하는 경우, 상기 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값의 수평 성분을 획득하고, 모든 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환할 수 있다.
일 실시예에서, 상기 처리 기기는 상기 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 움직임 벡터 값의 저장 정밀도에 따라 변환 계수(s)를 결정하고, 제1 기설정 변환 규칙과 상기 변환 계수(s)를 이용하여, 상기 움직임 벡터 예측 값의 수평 성분을 풀 픽셀 정밀도로 변환할 수 있다. 어떤 실시예에서, 상기 변환 계수(s)와 상기 움직임 벡터 값의 저장 정밀도 사이의 관계는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
일 실시예에서, 상기 처리 기기는 제1 기설정 변환 규칙과 상기 변환 계수(s)를 이용하여 상기 움직임 벡터 예측 값의 수평 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 수평 성분이 0보다 크거나 그와 같은지를 판단할 수 있으며, 만약 상기 수평 성분이 0보다 크거나 그와 같다면, 상기 변환 계수(s)와 1의 차를 좌측으로 1비트 이동시켜 제1 시프트 값을 얻고, 상기 제1 시프트 값과 상기 수평 성분의 합을 우측으로 s비트 이동시켜 제2 시프트 값을 얻고, 또한 상기 제2 시프트 값을 좌측으로 s비트 이동시켜 상기 수평 성분의 풀 픽셀 정밀도를 얻을 수 있다. 어떤 실시예에서는, 상기 수평 성분이 0보다 크거나 그와 같은 경우, 상기 제1 기설정 변환 규칙은 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
다른 실시예에서는, 상기 수평 성분이 0보다 크거나 그와 같은 경우, 상기 제1 기설정 변환 규칙은 상기 변환 규칙을 포함하나 이에 한정되지 않으며, 그밖의 다른 변환 규칙일 수도 있으며, 상기 수평 성분을 풀 픽셀로 변환하면 된다. 구체적인 실시예와 예시는 전술한 바와 같다.
일부 실시예에서, 상기 처리 기기는 만약 상기 수평 성분이 0보다 작은 것으로 판단하면, 상기 제1 시프트 값과 상기 수평 성분의 차를 우측으로 s비트 이동시켜 제3 시프트 값을 얻고, 상기 제3 시프트 값을 좌측으로 s비트 이동시키고 그 반수를 취함으로써 상기 수평 성분의 풀 픽셀 정밀도를 얻을 수 있다. 어떤 실시예에서는, 상기 수평 성분이 0보다 작은 경우, 상기 제1 기설정 변환 규칙은 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
다른 실시예에서는, 상기 수평 성분이 0보다 작은 경우, 상기 제1 기설정 변환 규칙은 상기 변환 규칙을 포함하나 이에 한정되지 않으며, 그밖의 다른 변환 규칙일 수도 있으며, 상기 수평 성분을 풀 픽셀로 변환하면 된다. 구체적인 실시예와 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득하고, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수평 성분을 획득하며, 또한 상기 움직임 벡터 값의 수평 성분을 풀 픽셀 정밀도로 변환함으로써, 수평 성분을 풀 픽셀 정밀도로 변환한 후의 상기 움직임 벡터 값에 따라 비디오의 인코딩 또는 디코딩을 수행할 수 있다. 이와 같은 실시형태를 통해, 대역폭 이용률을 어느 정도 향상시키고, 인코딩 또는 디코딩 동작을 간소화하여 인코딩 또는 디코딩의 효율을 향상시킨다.
이하 실시예는 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환하는 이러한 실시 프로세스에 대해 예시적 설명을 한 것이다. 구체적으로, 본 출원의 실시예에 따른 상기 방법은 아래와 같은 단계를 포함한다.
A4: 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득한다.
하나의 선택적인 실시예로서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득할 수 있다.
B4: 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수직 성분을 획득한다.
하나의 선택적인 실시예로서, 처리 기기는 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수직 성분을 획득할 수 있다.
C4: 상기 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환한다.
움직임 벡터 값의 하나의 선택적인 실시예로서, 상기 처리 기기는 상기 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수직 성분을 획득하고, 상기 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환할 수 있다. 상기 움직임 벡터 값의 수평 성분은 변할 수 있거나 변하지 않는다. 더 바람직하게는 상기 움직임 벡터 값의 수평 성분의 픽셀 정밀도는 변하지 않는다.
어떤 실시예에서, 상기 처리 기기는 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 양방향 움직임 정보 중의 적어도 하나의 움직임 벡터 값을 풀 픽셀 정밀도로 변환하는 경우, 상기 양방향 움직임 정보 중의 적어도 하나의 움직임 벡터 값의 수직 성분을 획득하고, 상기 양방향 움직임 정보 중의 적어도 하나의 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환할 수 있다.
어떤 실시예에서, 상기 처리 기기는 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값을 풀 픽셀 정밀도로 변환하는 경우, 상기 제1 움직임 정보 후보 리스트 중의 모든 움직임 벡터 값의 수직 성분을 획득하고, 모든 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환할 수 있다.
일 실시예에서, 상기 처리 기기는 상기 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 움직임 벡터 값의 저장 정밀도에 따라 변환 계수(s)를 결정하고, 제2 기설정 변환 규칙과 상기 변환 계수(s)를 이용하여 상기 움직임 벡터 예측 값의 수직 성분을 풀 픽셀 정밀도로 변환할 수 있다. 상기 움직임 벡터 예측 값의 수직 성분을 풀 픽셀 정밀도로 변환하는 방식은 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
일 실시예에서, 상기 처리 기기는 제2 기설정 변환 규칙과 상기 변환 계수(s)를 이용하여 상기 움직임 벡터 예측 값의 수직 성분을 풀 픽셀 정밀도로 변환하는 경우, 상기 수직 성분이 0보다 크거나 그와 같은지를 판단할 수 있으며, 만약 상기 수직 성분이 0보다 크거나 그와 같은 것으로 판단하면, 상기 변환 계수(s)와 1의 차를 좌측으로 1비트 이동시켜 제4 시프트 값을 얻고, 상기 제4 시프트 값과 상기 수직 성분의 합을 우측으로 s비트 이동시켜 제5 시프트 값을 얻고, 또한 상기 제5 시프트 값을 좌측으로 s비트 이동시켜 상기 수직 성분의 풀 픽셀 정밀도를 얻을 수 있다. 어떤 실시예에서는, 상기 수직 성분이 0보다 크거나 그와 같은 경우, 상기 제2 기설정 변환 규칙은 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
다른 실시예에서는, 상기 수직 성분이 0보다 크거나 그와 같은 경우, 상기 제2 기설정 변환 규칙은 상기 변환 규칙을 포함하나 이에 한정되지 않으며, 그밖의 다른 변환 규칙일 수도 있으며, 상기 수직 성분을 풀 픽셀로 변환하면 된다. 구체적인 실시예의 예시는 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
일 실시예에서, 상기 처리 기기는 만약 상기 수직 성분이 0보다 작은 것으로 판단하면, 상기 제4 시프트 값과 상기 수직 성분의 차를 우측으로 s비트 이동시켜 제6 시프트 값을 얻고, 상기 제6 시프트 값을 좌측으로 s비트 이동시키고 그 반수를 취해 상기 수직 성분의 풀 픽셀 정밀도를 얻을 수 있다. 어떤 실시예에서는, 상기 수직 성분이 0보다 작은 경우, 상기 제2 기설정 변환 규칙은 전술한 바와 같으며 여기서 더 이상 설명하지 않는다.
본 출원의 실시예에서, 처리 기기는 코드 스트림으로부터 제1 화상 블록의 제1 움직임 정보 후보 리스트를 획득하고, 상기 제1 화상 블록의 제1 움직임 정보 후보 리스트 중의 움직임 벡터 값의 수직 성분을 획득하고, 또한 상기 움직임 벡터 값의 수직 성분을 풀 픽셀 정밀도로 변환함으로써, 수직 성분이 풀 픽셀 정밀도로 변환된 후의 움직임 벡터 값에 따라 비디오의 인코딩 또는 디코딩을 수행할 수 있다. 이와 같은 실시형태를 통해, 대역폭 이용률을 어느 정도 향상시키고, 인코딩 또는 디코딩 동작을 간소화하여 인코딩 또는 디코딩의 효율을 향상시킨다.
이상 제1의 양방향 움직임 정보에 의해 움직임 벡터 값의 정밀도 변환을 수행하고, 또한 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정할 수 있음을 각각 설명했다. 서로 다른 제1의 양방향 움직임 정보에 대한 처리 규칙은 다를 수 있다.
구체적으로, 상기 제1의 양방향 움직임 정보가 제1의 타겟 양방향 움직임 정보인 경우, 상기 제1의 타겟 양방향 움직임 정보를 조정하는 기설정 규칙은, 상기 제1의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값의 정밀도를 변환하는 것이며; 상기 제1의 양방향 움직임 정보가 상기 제1의 양방향 타겟 움직임 정보와는 다른 제2의 타겟 양방향 움직임 정보인 경우, 상기 제2의 타겟 양방향 움직임 정보를 조정하는 기설정 규칙은, 상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하여, 상기 서브 화상 블록의 움직임 정보로 하는 것이다.
이상, 제1 움직임 정보 후보 리스트로부터 양방향 움직임 정보를 선택한 경우, 당해 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하거나 또는 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터의 정밀도를 조정할 수 있음을 언급했다. 본 출원의 실시예에서는 제1 움직임 정보 후보 리스트를 구축할 때 양방향 움직임 정보를 단방향 움직임 정보로 조정할 수도 있다.
여기서, 움직임 정보 후보 리스트를 구축하는 경우, 임의의 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정할 수도 있고, 특정의 양방향 움직임 정보를 단방향 움직임 정보로 조정할 수도 있다. 만약 특정의 양방향 움직임 정보를 단방향 움직임 정보로 조정한다면, 제1 움직임 정보 후보 리스트에 양방향 움직임 정보가 존재할 수 있으며, 만약 제1 움직임 정보 후보 리스트로부터 양방향 움직임 정보(예를 들면, 상기에서 언급한 제1의 양방향 움직임 정보)를 선택했다면, 이때 상기에서 언급한 방법에 따라, 양방향 움직임 정보를 단방향 움직임 정보로 조정하여 화상 블록의 인코딩 또는 디코딩을 수행할 수 있다. 이해해야 할 것은, 제1 움직임 정보 후보 리스트를 구축하는 경우, 설사 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 수행하지 않더라도, 제1 움직임 정보 후보 리스트에는 단방향 움직임 정보뿐만 아니라 양방향 움직임 정보도 존재할 수 있거나; 또는 양방향 움직임 정보만 존재하거나, 또는 단방향 움직임 정보만 존재할 수 있다.
이하, 움직임 정보 후보 리스트에서 양방향 움직임 정보(즉, 아래에 언급된 제2의 양방향 움직임 정보)를 하나의 단방향 움직임 정보(즉, 아래에 언급된 제2의 단방향 움직임 정보)로 어떻게 조정하는지를 설명한다. 선택적으로, 본 출원의 실시예에서 제1의 양방향 움직임 정보를 제1의 단방향 움직임 정보로 조정하는 방식은 제2의 양방향 움직임 정보를 제2의 단방향 움직임 정보로 조정하는 방식과 같거나 같지 않을 수 있다.
하나의 구현형태에서, 처리 기기는 당해 제2의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하여 제2의 단방향 움직임 정보로 할 수 있다.
선택적으로, 처리 기기는 기설정 규칙에 따라, 상기 제2의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제2의 단방향 움직임 정보로 할 수 있다. 여기서, 상기 기설정 규칙은 상기 제2의 양방향 움직임 정보로부터 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트이다.
구체적으로, 처리 기기에 기설정 규칙이 미리 설정될 수 있으며, 당해 기설정 규칙은 제1 리스트에 속하는 단방향 움직임 정보를 선택하는지, 아니면 제2 리스트에 속하는 단방향 움직임 정보를 선택하는지를 지시할 수 있으며, 이로써 처리 기기는 당해 기설정 규칙에 따라 당해 제2의 양방향 움직임 정보로부터 단방향 움직임 정보의 선택을 수행할 수 있다.
또는, 본 출원의 실시예에서는 알고리즘 방식을 이용하여 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 제1의 단방향 움직임 정보로 할 수도 있다.
선택적으로, 본 출원의 실시예에서, 상기 제1 움직임 정보 후보 리스트 중 적어도 2개의 상기 제2의 양방향 움직임 정보에 대응되는 상기 제2의 단방향 움직임 정보가 소속된 리스트는 서로 다르며, 상기 소속된 리스트는 제2 리스트와 제1 리스트를 포함한다.
다시 말해, 제1 움직임 정보 후보 리스트에서 양방향 움직임 정보로부터 조정되는 단방향 움직임 정보는 2개의 리스트, 즉 제1 리스트와 제2 리스트에 각각 속할 수 있다.
선택적으로, 본 출원의 실시예에서, 상기 제2의 양방향 움직임 정보를 위해 상기 제2의 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능하다.
구체적으로, 서로 다른 화상 블록에 대해, 이에 포함되는 서브 화상 블록을 위해 단방향 움직임 정보를 선택하는 선택 방식은 서로 다를 수 있다.
예를 들면, 현재 화상 블록의 직전 화상 블록에 대해서는, 상기에서 언급한 기설정 규칙에 따른 방식을 이용하여 당해 직전 화상 블록에 포함된 각각의 서브 화상 블록에 대해 단방향 움직임 정보의 선택을 수행할 수 있고, 현재 화상 블록에 대해서는, 상기에서 언급한 알고리즘에 따른 방식으로 당해 현재 화상 블록에 포함된 각각의 서브 화상 블록에 대해 단방향 움직임 정보의 선택을 수행할 수 있다.
또는, 동일 화상 블록의 서로 다른 서브 화상 블록에 대해, 양방향 움직임 정보로부터 단방향 움직임 정보를 선택하는 선택 방식은 서로 다를 수 있다.
예를 들면, 현재 서브 화상 블록의 직전 서브 화상 블록(당해 직전 서브 화상 블록과 현재 서브 화상 블록은 동일 화상 블록에 속함)에 대해서는, 상기에서 언급한 기설정 규칙에 따른 방식으로 당해 직전 서브 화상 블록에 대해 단방향 움직임 정보의 선택을 수행할 수 있고, 현재 서브 화상 블록에 대해서는, 상기에서 언급한 알고리즘에 따른 방식으로 당해 현재 서브 화상 블록에 대해 단방향 움직임 정보의 선택을 수행할 수 있다.
물론, 본 출원의 실시예에서, 서로 다른 화상 블록 또는 서로 다른 서브 화상 블록에 대응되는, 단방향 움직임 정보의 선택을 수행하는 방식은 서로 같을 수 있다.
본 출원의 실시예에서, 만약 제2의 양방향 움직임 정보로부터 하나의 제2의 단방향 움직임 정보를 선택했다면, 코딩단에서는 상기 제2의 단방향 움직임 정보의 제2 식별자를 코딩된 코드 스트림에 기입할 수 있다.
이와 상응하게, 디코딩단에서는, 디코딩된 코드 스트림으로부터 제2의 단방향 움직임 정보의 제2 식별자를 획득할 수 있으며, 이로써 당해 제2 식별자에 따라 제2의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하여 제2의 단방향 움직임 정보로 할 수 있다.
예를 들면, 제2의 양방향 움직임 정보에 포함된 단방향 움직임 정보의 식별자를 각각 0과 1로 가정하면, 만약 코딩단에서 식별자가 0인 단방향 움직임 정보를 선택하여 제2의 단방향 움직임 정보로 하였다면, 식별자 0을 코드 스트림에 기입할 수 있으며, 디코딩단에서는 디코딩된 코드 스트림으로부터 당해 식별자 0을 선택할 수 있고, 이로써 디코딩단에서는 제2의 양방향 움직임 정보 중의 식별자가 0인 움직임 정보를 제2의 단방향 움직임 정보로 결정할 수 있다.
코딩단에서 제2 식별자를 코딩된 코드 스트림에 기입한 경우, 코딩단에서는 알고리즘 기반 방식으로 당해 제2의 단방향 움직임 정보를 선택할 수 있고, 디코딩단에서는 다시 알고리즘을 이용할 필요가 없이 제2의 양방향 움직임 정보로부터 제2의 단방향 움직임 정보를 선택하는 것을 구현할 수 있다.
그리고 만약 코딩단이 상기에서 언급한 기설정 규칙에 따른 방식으로 제2의 양방향 움직임 정보로부터 제2의 단방향 움직임 정보를 선택한다면, 디코딩단도 동일한 기설정 규칙을 이용하여 제2의 양방향 움직임 정보로부터 제2의 단방향 움직임 정보를 선택할 수 있다.
물론, 설사 코딩단이 상기에서 언급한 기설정 규칙에 따른 방식으로 제2의 양방향 움직임 정보로부터 제2의 단방향 움직임 정보를 선택한다고 해도, 코딩단은 여전히 당해 제2의 단방향 움직임 정보의 식별자를 코딩된 코드 스트림에 기입하여, 디코딩단이 당해 제2 식별자에 따라 제2의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하여 제2의 단방향 움직임 정보로 하도록 할 수 있다.
본 출원의 실시예에서는, 제2의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하는 방식으로 제2의 단방향 움직임 정보를 얻을 수 있을 뿐만 아니라, 제2의 양방향 움직임 정보를 병합 처리하여 제2의 단방향 움직임 정보를 얻을 수도 있다.
본 출원의 실시예에서는, 양방향 움직임 정보에 포함된 2개의 움직임 정보가 서로 다른 기준 프레임에 속할 수 있으므로, 상기 제2의 양방향 움직임 정보에 대해 병합 처리를 수행하기 전에 상기 제2의 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보에 기반하여 스케일링할 수 있다. 여기서, 구체적인 스케일링 구현은 상기 도 5에 관한 설명을 참고할 수 있다. 여기서, 병합 처리된 후의 움직임 정보의 기준 프레임은 당해 다른 하나의 움직임 정보가 가리키는 기준 프레임일 수 있다.
본 출원의 실시예에서 언급한 병합 처리는 가중 처리일 수도 있고, 평균 처리일 수도 있다.
선택적으로, 본 출원의 실시예에서 병합 처리가 가중 처리인 경우, 처리 기기는 상기 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치에 기반하여 상기 제2의 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용할 수 있으며,
상기 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함할 수 있다.
하나의 구현형태에서, 제1 화상 블록의 크기는 제1 화상 블록의 폭과 높이를 포함할 수 있으며, 처리 기기는 제1 화상 블록의 폭과 높이에 따라 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정할 수 있다. 구체적으로 폭과 높이의 절대 수치, 및/또는 폭과 높이 이들 양자 사이의 비율에 따라 각각의 움직임 정보의 가중치를 결정할 수 있다.
예를 들면, 만약 제1 화상 블록의 폭과 높이가 모두 32개 픽셀보다 크다면, 제2의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제2의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치=2:1이다. 만약 제1 화상 블록의 폭과 높이가 모두 16개 픽셀보다 크고 32개 픽셀보다 작거나 그와 같다면, 제2의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제2의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치=1:1이다. 그밖의 다른 경우에 대해서는 제2의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제2의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치=1:2이다.
예를 들면, 제2의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제2의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치=제1 화상 블록의 폭:제1 화상 블록의 높이이다.
다른 구현형태에서, 처리 기기는 제1 화상 블록 및/또는 그 인접 영역의 픽셀 값을 이용하여, 제1 화상 블록 및/또는 그 인접 영역의 수평, 수직, 45도(수평 방향과 45도 사이각을 형성) , 135도(수평 방향과 135도 사이각을 형성) 방향 중의 어느 하나의 방면의 1차 또는 2차 구배를 연산하고, 구배 방향으로부터 텍스쳐 방향을 결정할 수 있다. 그후, 제2의 양방향 움직임 정보(예를 들면, 양방향 MV) 중의 당해 텍스쳐 방향에 더 근접하는 움직임 정보(단방향 MV)에 더 높은 가중치를 부여한다. 여기서, 이 부분에서 언급한 제1 화상 블록의 인접 영역은 제1 화상 블록의 주변 영역(제1 화상 블록과 인접하고 또한/또는 제1 화상 블록과 기설정 영역만큼 이격됨)일 수 있다. 예를 들면, 제1 화상 블록을 사각형으로 가정하면, 당해 인접 영역은 적어도 하나의 주변 영역일 수 있으며, 인접 영역의 크기는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
다른 구현형태에서, 처리 기기는 상기 제2 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 개수와 제2 리스트에 속하는 움직임 정보의 비율에 따라, 제2의 양방향 움직임 정보에 포함된 각각의 움직임 정보의 가중치를 결정할 수 있다.
예를 들면, 제1 움직임 정보 후보 리스트 중의 이미 추가된 움직임 정보 중 리스트 0에 속하는 MV의 개수:제1 움직임 정보 후보 리스트 중의 이미 추가된 움직임 정보 중 리스트 1에 속하는 MV의 개수=제1의 양방향 움직임 정보 중 리스트 0에 속하는 움직임 정보의 가중치:제1의 양방향 움직임 정보 중 움직임 리스트 1에 속하는 움직임 정보의 가중치이다.
이상, 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하는 다양한 구현형태를 각각 설명했다. 그러나 이해해야 할 것은, 본 출원의 실시예는 그밖의 다른 구현형태를 통해, 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하는 것을 구현할 수도 있으며, 본 출원의 실시예는 이에 대해 구체적으로 한정하지 않는다. 당해 다양한 구현형태에서 어떤 구현형태를 이용할 것인지는 처리 기기에 미리 설정될 수 있다.
예를 들면, 두 번째 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하는 방식으로 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하도록 처리 기기에 미리 설정된다.
여기서, 기설정 규칙에 따른 방식으로 제2의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택할 것인지, 아니면 연산 방식으로 제2의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택할 것인지는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
예를 들면, 제2의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 병합 처리하는 방식으로 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하도록 처리 기기에 미리 설정된다.
여기서, 평균 처리 방식을 이용할 것인지, 아니면 병합 처리 방식을 이용할 것인지는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
예를 들면, 제2의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 평균 처리하는 방식으로 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하도록 처리 기기에 미리 설정된다.
여기서, 평균 처리를 이용하는 경우, 리스트 0에 속하는 움직임 정보를 리스트 1에 기반하여 스케일링할 것인지, 아니면 리스트 1의 움직임 정보를 리스트 0에 기반하여 스케일링할 것인지는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
예를 들면, 제2의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 가중 처리하는 방식으로 하나의 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정하도록 처리 기기에 미리 설정된다.
여기서, 가중 처리를 이용하는 경우, 리스트 0에 속하는 움직임 정보를 리스트 1에 기반하여 스케일링할 것인지, 아니면 리스트 1의 움직임 정보를 리스트 0에 기반하여 스케일링할 것인지는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 방식으로 얻을 수도 있다.
또는, 본 출원의 실시예에서는, 이하 요소를 토대로 다수의 제2 방법으로부터, 제2의 양방향 움직임 정보를 제2의 단방향 움직임 정보로 조정하는 제2 조정 방법을 결정할 수 있다.
즉, 상기 요소는, 상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수이다.
여기서, 당해 다수의 제2 방법은,
1b) 상기 제2의 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 제2의 단방향 움직임 정보로 결정하는 방법;
2b) 상기 제2의 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 제2의 단방향 움직임 정보로 결정하는 방법;
3b) 상기 제2의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여 상기 제2의 단방향 움직임 정보를 얻는 방법;
4b) 상기 제2의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여 상기 제2의 단방향 움직임 정보를 얻는 방법;
5b) 상기 제2의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제2의 단방향 움직임 정보를 얻는 방법;
6b) 상기 제2의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제2의 단방향 움직임 정보를 얻는 방법;
중의 적어도 하나의 방법을 포함할 수 있다.
하나의 구현형태에서, 제1 화상 블록의 크기는 제1 화상 블록의 폭과 높이를 포함할 수 있고, 처리 기기는 제1 화상 블록의 폭과 높이에 따라 상기 방법 1)~6) 중의 어느 방법을 이용할 것인지를 결정할 수 있다. 구체적으로, 폭과 높이의 절대 수치, 및/또는 폭과 높이 이들 양자 사이의 비율에 따라 상기 방법 1b)~6b) 중의 어느 방법을 이용할 것인지를 결정할 수 있다.
예를 들면, 만약 제1 화상 블록의 폭과 높이가 모두 32개 픽셀보다 크다면, 방법 1b)를 이용할 수 있고; 만약 제1 화상 블록의 폭과 높이가 모두 16개 픽셀보다 작거나 그와 같다면, 방법 2b)를 이용할 수 있으며, 그밖의 다른 경우에는 방법 3b)~6b)를 이용할 수 있다.
예를 들면, 만약 제1 화상 블록의 폭:제1 화상 블록의 높이가 1보다 크다면, 방법 1b)를 이용하고, 1보다 작다면 방법 2b)를 이용하고, 1과 같다면, 방법 3b)~6b)를 이용할 수 있다.
다른 구현형태에서, 처리 기기는 제1 화상 블록 및/또는 그 인접 영역의 픽셀 값을 통해, 제1 화상 블록 및/또는 그 인접 영역의 수평, 수직, 45도, 135도 방향에서의 1차 또는 2차 구배를 연산하고, 구배 방향을 이용하여 텍스쳐 방향을 결정할 수 있다. 만약 텍스쳐 방향이 제2의 양방향 움직임 정보에 속하는, 제1 리스트에 속하는 움직임 정보에 더 근접한다면, 방법 1b)를 이용하고, 만약 텍스쳐 방향이 제2의 양방향 움직임 정보에 속하는, 제2 리스트에 속하는 움직임 정보에 더 근접한다면, 방법 2b)를 이용한다.
다른 구현형태에서, 처리 기기는 상기 제1 움직임 정보 후보 리스트 중의 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 개수와 제2 리스트에 속하는 움직임 정보의 비율에 따라, 제2의 양방향 움직임 정보에 포함된 각 움직임 정보의 가중치를 결정할 수 있다.
예를 들면, 만약 제1 리스트에 속하는 움직임 정보의 개수가 많다면, 방법 1b)를 이용하고, 제1 리스트에 속하는 움직임 정보의 개수가 적다면, 방법 2b)를 이용하고, 만약 개수가 마찬가지로 많다면 방법 3b)~6b)를 이용한다.
또는, 당해 다수의 제2 방법은,
2A) 제2의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하여 제2의 단방향 움직임 정보로 하는 방법;
2B) 제2의 양방향 움직임 정보를 병합 처리하여 제2의 단방향 움직임 정보를 얻는 방법;
중의 적어도 하나의 방법을 포함할 수 있다.
만약 상기에서 언급한 요소를 토대로 방법 2A)를 선택하여 조정 방법으로 한다면, 제2의 양방향 움직임 정보로부터 하나의 단방향 움직임 정보를 선택하는 구현형태는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 요소를 토대로 결정될 수도 있다.
마찬가지로, 만약 상기에서 언급한 요소를 토대로 방법 2B)를 선택하여 조정 방법으로 한다면, 제2 움직임 정보를 병합 처리하는 구현형태는 처리 기기에 미리 설정될 수도 있고, 그밖의 다른 요소를 토대로 결정될 수도 있다.
이해해야 할 것은, 방법 2A) 및/또는 방법 2B)는 각각 다양한 구체적인 구현 방법을 포함할 수도 있다. 예를 들면, 방법 2A)는 상기와 같이 제2의 양방향 움직임 정보에 대해 설명한 1a) 내지 2a)를 포함할 수 있고, 방법 2B)는 상기와 같이 제2의 양방향 움직임 정보에 대해 설명한 3a) 내지 6a)를 포함할 수 있다. 처리 기기가 방법 2A) 및/또는 방법 2B)를 선택할 수 있다는 것은, 방법 2A) 및/또는 방법 2B)에 포함된 구체적인 구현 방법을 선택하는 것으로 이해할 수 있다.
선택적으로, 본 출원의 실시예에서는 현재 프레임의 서로 다른 화상 블록에 대하여, 상기 조정 방법 중의 서로 같은 방법을 이용하여 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 구현할 수 있다. 또는, 현재 프레임의 서로 다른 화상 블록에 대하여, 상기 조정 방법 중의 서로 같은 방법을 이용하여 양방향 움직임 정보로부터 단방향 움직임 정보로의 조정을 구현할 수 있다.
따라서, 본 출원의 실시예에서 움직임 정보 후보 리스트를 구축하는 경우, 당해 움직임 정보 후보 리스트에 추가되는 움직임 정보가 양방향 움직임 정보이면, 당해 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정할 수 있으며, 제1 움직임 정보 후보 리스트로부터 서브 화상 블록을 위해 양방향 움직임 정보를 선택하는 확률을 줄일 수 있으므로, 움직임 정보 후보 리스트로부터 양방향 움직임 정보를 선택하여 인코딩 또는 디코딩을 수행함에 따른 연산 복잡도 문제점을 최대한 피할 수 있다.
더 나아가, 추가할 움직임 정보를 움직임 정보 후보 리스트에 추가하는 경우에는, 추가할 움직임 정보(양방향 움직임 정보로부터 단방향 움직임 정보로의 처리를 거친 것일 수 있으며, 물론 처리를 거치지 않은 양방향 움직임 정보일 수도 있으나, 움직임 정보 후보 리스트에 추가할 때 추가적인 처리를 수행할 수 있음)를 직접 움직임 정보 후보 리스트에 추가할 수 있으며, 상기에서 언급한 바와 같이 먼저 후보 리스트 a를 구축하고 다시 후보 리스트 a를 토대로 후보 리스트 b를 구축하는 프로세스를 수행하지 않는다. 즉, 리스트를 한 번만 구축하면 되므로 처리 복잡도를 피할 수 있다.
본 출원의 실시예는 화상 프레임을 코딩하는 프로세스에서 서로 다른 화상 블록을 서브 화상으로 분할하는 개수는 서로 다를 수 있다.
예를 들면, 상기에서 언급한 제1 화상 블록은 다수의 서브 화상 블록을 포함하고, 또한 제2 화상 블록이 존재하며, 하나의 서브 화상 블록만을 포함한다.
이와 같은 경우, 만약 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 방식과 제2 화상 블록을 위해 제2 움직임 정보리스트를 구축하는 방식이 완전히 다르다면, 제1 움직임 정보 후보 리스트의 구축을 위한 하드웨어와 제2 움직임 정보 후보 리스트의 구축을 위한 하드웨어는 서로 호환할 수 없게 되어 처리 기기의 하드웨어의 구성이 복잡해지고 하드웨어의 구현에 불리하게 된다.
이해해야 할 것은, 화상 프레임을 코딩하는 프로세스에서 상기 제2 움직임 정보 후보 리스트는 반드시 구축해야 하는 것은 아니며, 구체적인 인코딩 및 디코딩 수요에 따라 정해야 한다. 제2 움직임 정보 후보 리스트는 제1 움직임 정보 후보 리스트의 구축 방식의 특징을 명확화 하기 위해, 제1 움직임 정보 후보 리스트의 구축 방식의 특징을 설명하기 위한 예시적 설명일 뿐일 수 있다.
이를 위해, 본 출원의 실시예에서는 처리 기기의 하드웨어 구성을 간소화 하기 위해, 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는,
추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며,
상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것이다. 여기서, 제2 움직임 정보 후보 리스트는 Merge 모드에서의 움직임 정보 후보 리스트일 수 있다. 여기서 언급한 구체적인 Merge 모드는 일반 Merge 모드(또는 종래의 Merge 모드)일 수 있으며, 예를 들어, 당해 일반 Merge 모드는 코딩된 화상 블록(예컨대 장방형 화상 블록)에 대해 더 이상 서브 화상 블록의 분할을 수행하지 않는 것일 수 있으며, 당해 코딩된 화상 블록에 대해 움직임 정보 후보 리스트로부터 움직임 정보를 선택할 수 있다. 이해할 수 있듯이, 제2 움직임 정보 후보 리스트는 일반 Merge 모드에서의 움직임 정보 후보 리스트, 예를 들어 AMVP 모드에서의 움직임 정보 후보 리스트가 아닐 수도 있다. 본 출원의 실시예는 제2 움직임 정보 후보 리스트가 일반 Merge 모드에서의 움직임 정보 후보 리스트인 것을 예로 들어 설명한다.
선택적으로, 본 출원의 실시예에서, 상기에서 언급한 추가 가능한 움직임 정보는,
공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 제로 움직임 벡터 중의 적어도 하나를 포함한다.
구체적으로, 추가 가능한 움직임 정보는 공간 도메인 상의 인접 블록의 움직임 정보와 시간 도메인 상의 인접 블록의 움직임 정보를 포함할 뿐만 아니라, 그밖의 다른 유형의 움직임 정보를 더 포함하며, 예를 들어, 상기 각종 유형의 움직임 정보 전체를 포함할 수 있다. 이때 추가 가능한 움직임 정보의 종류가 많아 인코딩 및 디코딩의 성능을 향상시킬 수 있다. 그리고 상기에서 언급한 후보 리스트 b는 공간 도메인 상의 인접 블록의 움직임 정보와 시간 도메인 상의 인접 블록의 움직임 정보만 포함하고, 움직임 정보의 종류가 적어 인코딩 및 디코딩의 성능에 불리하다.
선택적으로, 본 출원의 실시예에서는 본 출원의 실시예에서 언급한 추가 가능한 움직임 정보는 제1 움직임 정보 후보 리스트 또는 제2 움직임 정보 후보 리스트로서 선택 가능한 움직임 정보를 가리킨다.
만약 일부 제1 화상 블록에 대하여, 이들 제1 화상 블록이 공간 도메인 상의 인접 블록(시간 도메인 상의 인접 블록일 수도 있음)이 존재하지 않거나, 또는 그 공간 도메인 상의 인접 블록이 인코딩 또는 디코딩되지 않을 수 있다면, 이와 같은 경우는 현재 제1 화상 블록에 대한 것만을 나타내며, 제1 움직임 정보 후보 리스트는 공간 도메인 상의 인접 블록의 움직임 정보가 존재하지 않을 수 있으나, 공간 도메인 상의 인접 블록의 움직임 정보는 여전히 추가 가능한 움직임 정보로 이해할 수 있다.
선택적으로, 본 출원의 실시예에서, 추가 가능한 동일 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서는 당해 종래의 움직임 정보의, 전체 종류의 움직임 정보의 우선순위의 순서를 가리킬 수 있다.
선택적으로, 본 출원의 실시예에서, 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서란, 당해 종류의 움직임 정보에 대하여, 포함된 움직임 정보의, 당해 종류의 움직임 정보 중의 우선순위의 순서를 가리킬 수 있다.
예를 들면, 공간 도메인 상의 인접 블록의 움직임 정보에 대해서는, 우선순위의 순서는 내림순으로, 좌측의 화상 블록의 움직임 정보, 상부의 화상 블록의 움직임 정보, 우상각의 화상 블록의 움직임 정보, 좌하각의 화상 블록의 움직임 정보, 좌상각의 화상 블록의 움직임 정보일 수 있다.
선택적으로, 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것은, 당해 종류의 움직임 정보의 결정에 이용된 인접 블록의, 제1 화상 블록에 대한 위치; 당해 움직임 정보의 생성에 필요한 적어도 2개의 움직임 정보의 선택 방식; 중의 적어도 하나가 서로 같다는 것을 가리킬 수 있다.
예를 들면, 도 6에 나타낸 바와 같이, 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트를 구축하는 경우, 공간 도메인 상의 인접 블록이 모두 현재 화상 블록을 포함하는 좌하각의 화상 블록은 A0이고, 좌측의 화상 블록은 A1이고, 좌상각의 화상 블록은 B2이고, 상부의 화상 블록은 B1이고, 우상각은 B0이다. 또한 시간 도메인 상의 인접 블록은 모두 화상 블록 C1과 C2를 포함한다.
예를 들면, 쌍을 이룬 평균 MV를 생성하는 경우, 선택되는 이용 MV는 서로 같을 수 있다. 예를 들면, 당해 MV가 속한 종류(예를 들면, 모두 공간 도메인 상의 인접 블록의 MV임) 및 당해 MV의 결정 방식이 서로 같을 수 있다(예를 들면, 제1 화상 블록에 대한 당해 MV의 인접 블록의 위치가 서로 같음).
선택적으로, 본 출원의 실시예에서, 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트의 구축 방식은 서로 같다. 구체적으로, 구축 방식이 서로 같다는 것은,
추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 전체 동일 측면을 포함할 수 있다.
이해해야 할 것은, 구축 방식이 서로 같다는 것은 상기 측면에서 서로 같을 뿐만 아니라 그밖의 다른 측면에서 서로 같을 수도 있다. 여기서 언급한 구축 방식이 서로 같다는 것은 완전히 같다는 것일 수 있다. 또는, 상기 측면 중의 일부 측면에서 서로 같다는 것일 수도 있다. 제2 움직임 정보 후보 리스트가 일반 Merge 모드에서의 움직임 정보 후보 리스트인 것을 예로 들면, 제1 움직임 정보 후보 리스트의 구축 방식은 일반 Merge 모드에서의 움직임 정보 후보 리스트의 구축 방식을 부분적으로 또는 전체적으로 참고할 수 있다.
예를 들면, 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는 모두 이하 (1)~(4)에서 언급된 각 종류의 움직임 정보를 포함하고, 각 종류의 움직임 정보의 순서는 (1)~(4)의 기호에 따라 내림순으로 정렬된다.
(1) 공간 도메인 상의 인접 블록의 움직임 정보. 여기서, 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트에 대하여, 현재 화상 블록에 대한 인접 블록의 공간 도메인 위치는 서로 같을 수 있으며, 각각의 인접 블록의 MV는 움직임 정보 후보 리스트 중의 추가 순서가 서로 같을 수 있다.
(2) 시간 도메인 상의 인접 블록의 움직임 정보. 여기서, 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트에 대하여, 현재 화상 블록에 대한 인접 블록의 시간 도메인 위치는 서로 같을 수 있으며, 각각의 인접 블록의 MV는 움직임 정보 후보 리스트 중의 추가 순서가 서로 같을 수 있다.
(3) 히스토리 기반의 움직임 벡터 예측(History based Motion Vector Prediction, HMVP) . 여기서, 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트에 대하여, HMVP를 선택하는 단계가 완전히 같다.
(4) 쌍을 이룬 평균 움직임 정보. 여기서, 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트에 대하여, 평균 움직임 정보의 생성에서 선택한 2개의 기본 MV에 대응되는 인접 블록의 종류가 서로 같고, 당해 인접 블록과 현재 화상 블록의 위치 관계가 서로 같다.
(5) 제로 움직임 벡터.
이해를 위해, 움직임 정보 후보 리스트가 MVP 후보 리스트인 것을 예로 들어 설명하며, 이하 언급된 MVP 후보 리스트의 구축 방식은 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트의 구축 방식이다.
여기서, MVP 후보 리스트의 구축은 이하 (1) 내지 (5) 중의 적어도 일부를 포함할 수 있다.
구체적으로, (1) 중의 공간 도메인 후보 MV를 이용하여 MVP 후보 리스트를 구축할 수 있으며, 만약 이때 구성한 MVP 후보 리스트에 포함된 후보 MVP의 개수가 기설정 개수에 도달하지 않으면, 공간 도메인 후보 MV를 포함한 MVP 후보 리스트에 (2) 중의 시간 도메인 후보 MV를 계속 추가할 수 있다. 만약 이때 구성한 MVP 후보 리스트에 포함된 후보 MVP의 개수가 기설정 개수에 도달하지 않으면, 이때 공간 도메인 후보 MV와 시간 도메인 후보 MV를 포함한 MVP 후보 리스트에 (3) 중의 쌍을 이룬 평균 후보 MV를 계속 추가할 수 있다. 만약 이때 구성한 MVP 후보 리스트에 포함된 후보 MVP의 개수가 기설정 개수에 도달하지 않으면, 이때 공간 도메인 후보 MV, 시간 도메인 후보 MV 및 쌍을 이룬 평균 후보 MV를 포함하는 MVP 후보 리스트에 (4) 중의 HMVP를 계속 추가할 수 있다. 만약 이때 구성한 MVP 후보 리스트에 포함된 후보 MVP의 개수가 기설정 개수에 도달하지 않으면, 이때 공간 도메인 후보 MV, 시간 도메인 후보 MV, 쌍을 이룬 평균 후보 MV와 HMVP를 포함하는 MVP 후보 리스트에 (5) 중의 제로 움직임 벡터를 계속 추가할 수 있으며, MVP 후보 리스트의 후보 MVP의 개수가 기설정 값에 도달할 때까지 추가한다.
여기서, 이하의 어느 한 항의 일부 후보를 MVP 후보 리스트에 추가할 때, 당해 리스트에 포함된 후보 MVP의 개수가 기설정 개수에 도달한 경우에는, 이때 당해 항의 나머지 부분의 원소를 MVP 후보 리스트에 추가하는 것을 중지할 수 있다.
이하, 후보 MVP 리스트를 구성하는 각 부분을 설명한다.
(1) 공간 도메인 후보 MV
구체적으로, 현재 화상 블록과 공간 도메인에서 인접하는 화상 블록의 MV를 MVP 후보 리스트에 추가 가능한 후보 MVP로 할 수 있다.
예를 들면, 도 6에 나타낸 바와 같이, 현재 화상 블록의 좌하각의 화상 블록을 A0로, 좌측의 화상 블록을 A1로, 좌상각의 화상 블록을 B2로, 상부의 화상 블록을 B1로, 우상각의 화상 블록을 B0로 가정하면, 후보 MVP의 순서는 우선순위에 따라 내림순으로 A1->B1->B0->A0->B2이다.
(2) 시간 도메인 후보 MV
구체적으로, 현재 화상 블록과 시간 도메인에서 인접하는 화상 블록의 MV를 MVP 후보 리스트에 추가 가능한 후보 MVP로 할 수 있다.
공간 도메인 후보 MV의 경우와는 달리, 시간 도메인 후보 MV는 후보 블록의 움직임 정보를 직접 사용하지 않을 수 있으며, 현재 프레임과 기준 프레임 사이의 시간 도메인 위치 관계에 따라 신축 조정을 상응하게 수행할 수 있다.
(3) 쌍을 이룬 평균 후보 MV
현재 이미 MVP 후보 리스트를 구성한 후보 MVP를 미리 정의된 페어링에 따라 평균을 구해 쌍을 이룬 평균 후보 MV를 도출한다.
미리 정의된 페어링 방식과 순서로는 (0, 1), (0, 2), (1, 2), (0, 3), (1, 3), (2, 3)일 수 있으며, 여기서 0, 1, 2와 3은 각각 HMVP 후보 리스트에 이미 존재하는 첫 번재, 두 번째, 세 번째 및 네 번째 후보 MVP를 가리키며, 각각의 괄호는 그 안의 MVP 후보에 대해 평균을 구함을 나타낸다.
(4) HMVP
이미 코딩된 화상 블록의 MV를 이용하여 HMVP 후보 리스트를 구축할 수 있으며, HMVP 후보 리스트 중의 후보 HMVP는 MVP 후보 리스트에 추가되는 후보 MVP로서 선택될 수 있다.
(5) 제로 움직임 벡터
(1)~(4)의 각 항을 MVP 후보 리스트에 추가하는 경우, MVP 후보 리스트 중의 MVP 후보가 여전히 기설정 개수에 도달하지 않으면, 제로 움직임 벡터를 이용하여 충진할 수 있으며, MVP 후보 리스트의 후보 MVP의 개수가 기설정 값에 도달할 때까지 충진한다.
물론, 상기 내용은 제2 움직임 정보 후보 리스트가 일반 Merge 모드에서의 움직임 정보 후보 리스트인 경우의 구축에 대해서만 부분적으로 설명했으나, 제1 움직임 정보 후보 리스트의 구축은 일반 Merge 모드에서의 움직임 정보 후보 리스트의 구축에 관한 다른 측면의 내용을 참고할 수도 있다.
이해해야 할 것은, 이상 설명한 움직임 정보 리스트는 본 출원의 실시예에 따른 하나의 구체적인 구현형태일 뿐이며 본 출원의 실시예에 대해 특별한 한정이 되어서는 안된다.
따라서, 본 출원의 실시예에서, 본 출원의 실시예 중의 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며, 제1 움직임 정보 후보 리스트를 구축하기 위한 하드웨어와 제2 움직임 정보 후보 리스트를 구축하기 위한 하드웨어가 적어도 부분적으로 호환하는 것을 구현할 수 있으며, 이에 따라 하드웨어 구성을 간소화 할 수 있다.
도 10은 본 출원의 실시예에 따른 비디오 처리 방법(400)의 예시적 흐름도이다. 당해 방법(400)은 처리 기기에 의해 구현될 수 있다. 당해 처리 기기는 코딩단 또는 디코딩단일 수 있으며, 구체적으로 코더 또는 디코더일 수 있다. 당해 방법(400)은 아래 내용 중의 적어도 일부 내용을 포함한다.
단계 410에서, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 경우, 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용한다.
단계 420에서, 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택한다.
단계 430에서, 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행한다.
이해해야 할 것은, 당해 방법(400) 중의 각 단계의 구현은 전술한 설명을 참고할 수 있으며, 간결한 기재를 위해 여기서 더 이상 설명하지 않는다. 여기서, 당해 타겟 양방향 움직임 정보는 전술한 내용에서 언급한 제2의 양방향 움직임 정보에 대응될 수 있으며, 당해 타겟 단방향 움직임 정보는 전술한 내용에서 언급한 제2의 단방향 움직임 정보에 대응될 수 있다.
따라서, 본 출원의 실시예에서, 움직임 정보 후보 리스트를 구축하는 경우, 당해 움직임 정보 후보 리스트에 추가되는 움직임 정보가 양방향 움직임 정보이면, 당해 양방향 움직임 정보를 하나의 단방향 움직임 정보로 조정할 수 있고, 제1 움직임 정보 후보 리스트로부터 서브 화상 블록을 위해 양방향 움직임 정보를 선택하는 확률을 줄일 수 있으므로, 움직임 정보 후보 리스트로부터 양방향 움직임 정보를 선택하여 인코딩 또는 디코딩을 수행함에 따른 연산 복잡도 문제점을 최대한 피할 수 있다.
선택적으로, 본 출원의 실시예에서, 상기 추가할 움직임 정보는 상기 제1 화상 블록의 인접 화상 블록의 움직임 정보를 토대로 결정된다.
구체적으로, 상기 제1 화상 블록의 인접 화상 블록의 움직임 정보를 토대로 추가할 움직임 정보를 직접 결정할 수 있으며, 먼저 하나의 리스트(예를 들면, 상기에서 언급한 후보 리스트 a)를 구축하고 다시 당해 리스트로부터 추가할 움직임 정보를 선택하여 제1 움직임 정보 후보 리스트에 추가하는 것이 아니다.
따라서, 추가할 움직임 정보를 움직임 정보 후보 리스트에 추가하는 경우에는, 추가할 움직임 정보(양방향 움직임 정보로부터 단방향 움직임 정보로의 처리를 거친 것일 수 있음)를 직접 움직임 정보 후보 리스트에 추가할 수 있으며, 상기에서 언급한 바와 같이 먼저 하나의 후보 리스트(예를 들면, 후보 리스트 a)를 구축하고 다시 하나의 후보 리스트를 토대로 다른 하나의 후보 리스트(예를 들면, 후보 리스트 b)를 구축하는 프로세스를 수행하지 않는다. 즉, 리스트를 한 번만 구축하면 되므로 모든 후보의 움직임 정보를 편력하고 또한 양방향 움직임 정보에 대해 양방향 움직임 정보로부터 단방향 움직임 정보로의 재구성을 수행하고(즉 하나의 양방향 MV를 2개의 단방향 MV로 변환함), 재구성된 움직임 정보의 중복 여부를 판단하여 다른 하나의 후보 리스트에 추가하는 것을 피할 수 있으며(여기서, 하나의 양방향 움직임 정보의 2개의 단방향 움직임 정보는 모두 당해 다른 하나의 후보 리스트에 추가될 수 있음), 이로써 처리 복잡도를 피할 수 있다. 이와 동시에, 제1 움직임 정보 후보 리스트의 구축이 먼저 구축한 후보 리스트에 의존하지 않을 수 있도록 할 수 있어, 제1 움직임 정보 후보 리스트의 구축이 먼저 구축된 후보 리스트의 길이, 추가된 움직임 정보, 구축 방식 등에 의해 한정되지 않는다. 따라서, 후보 리스트를 한 번만 구축한 경우에도 제1 움직임 정보 후보 리스트의 유연한 구축에 유리하다.
도 11은 본 출원의 실시예에 따른 비디오 처리 방법(500)의 예시적 흐름도이다. 당해 방법(500)은 처리 기기에 의해 구현될 수 있다. 당해 처리 기기는 코딩단 또는 디코딩단일 수 있으며, 구체적으로 코더 또는 디코더일 수 있다. 당해 방법(500)은 아래 내용 중의 적어도 일부 내용을 포함한다.
단계 510에서, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축한다. 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며, 상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것이다.
단계 520에서, 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택한다.
단계 530에서, 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행한다.
이해해야 할 것은, 당해 방법(500) 중의 각 단계의 구현은 전술한 설명을 참고할 수 있으며, 간결한 기재를 위해 여기서 더 이상 설명하지 않는다.
따라서, 본 출원의 실시예에서, 본 출원의 실시예 중의 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며, 제1 움직임 정보 후보 리스트를 구축하기 위한 하드웨어와 제2 움직임 정보 후보 리스트를 구축하기 위한 하드웨어의 적어도 일부를 호환하는 것을 구현할 수 있으며, 이에 따라 하드웨어 구성을 간소화 할 수 있다.
도 9는 본 출원의 실시예에 따른 비디오 처리 기기(600)의 예시적 블록도이다. 당해 비디오 처리 기기(600)는,
현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 구축 유닛(610);
적어도 하나의 양방향 움직임 정보를 포함하는 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 선택 유닛(620);
적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 인코딩 또는 디코딩 유닛(640)을 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 제1 움직임 정보 후보 리스트 중의 적어도 일부 움직임 정보에 대응되는 움직임 벡터 값은 정밀도 변환이 수행된 것이다.
선택적으로, 본 출원의 실시예에서, 상기 기기는 처리 유닛(630)을 더 포함하며,
상기 처리 유닛(630)은, 상기 서브 화상 블록에 대응하여 선택한 움직임 정보가 제1의 양방향 움직임 정보인 경우, 기설정 규칙에 따라 상기 제1의 양방향 움직임 정보를 처리하여 상기 제1 화상 블록의 인코딩 또는 디코딩에 이용하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 제1의 양방향 움직임 정보는 제1의 타겟 양방향 움직임 정보와 제2의 타겟 양방향 움직임 정보를 포함하며,
상기 제1의 타겟 양방향 움직임 정보를 처리하는 기설정 규칙은, 상기 제1의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값의 정밀도를 변환하는 것이며,
상기 제2의 타겟 양방향 움직임 정보를 처리하는 기설정 규칙은, 상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하여 상기 서브 화상 블록의 움직임 정보로 하는 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛은 또한,
상기 제1의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값의 정밀도를 변환하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
상기 제1의 양방향 움직임 정보에 포함된 움직임 벡터 값의 정밀도를 풀 픽셀 정밀도로 변환하기 위한 것이다. 
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하여, 상기 서브 화상 블록의 움직임 정보로 하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
상기 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제1의 단방향 움직임 정보로 하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
기설정 규칙에 따라, 상기 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제1의 단방향 움직임 정보로 하기 위한 것이며, 상기 기설정 규칙은 상기 제1의 양방향 움직임 정보로부터, 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트이다.
선택적으로, 본 출원의 실시예에서, 상기 제1의 양방향 움직임 정보를 위해 상기 제1의 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능하다.
선택적으로, 본 출원의 실시예에서, 상기 인코딩 또는 디코딩 유닛(640)은 또한,
상기 제1의 단방향 움직임 정보의 제1 식별자를 코딩된 코드 스트림에 기입하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 기기는 디코딩단에 이용되며, 상기 인코딩 또는 디코딩 유닛(640)은 또한,
디코딩된 코드 스트림으로부터 상기 제1의 단방향 움직임 정보의 제1 식별자를 획득하여, 상기 제1의 양방향 움직임 정보로부터 상기 제1의 단방향 움직임 정보를 선택하는 데 이용하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 인코딩 또는 디코딩 유닛(640)은 또한,
상기 제1의 양방향 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 제1의 단방향 움직임 정보로 하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
상기 제1의 양방향 움직임 정보를 병합 처리하기 전에, 상기 제1의 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보를 토대로 스케일링하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 병합 처리는 가중 처리 또는 평균 처리이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
상기 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 상기 제1의 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용하기 위한 것이며;
상기 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
상기 제1의 양방향 움직임 정보를 하나의 상기 제1의 단방향 움직임 정보로 조정하는 다수의 제1 방법에서 제1 조정 방법을 선택하고;
상기 제1 조정 방법에 따라, 상기 제1의 양방향 움직임 정보를 상기 제1의 단방향 움직임 정보로 조정하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 제1 조정 방법을 이를 포함하는 다수의 상기 제1 방법에서 선택하는 것은,
상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행된다.
선택적으로, 본 출원의 실시예에서, 다수의 상기 제1 방법은,
상기 제1의 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 제1의 단방향 움직임 정보로 결정하는 방법;
상기 제1의 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 제1의 단방향 움직임 정보로 결정하는 방법;
상기 제1의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제1의 단방향 움직임 정보를 얻는 방법;
상기 제1의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법;
상기 제1의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법;
상기 제1의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법; 중의 전체 또는 일부를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 기기는 처리 유닛(630)을 더 포함하며, 상기 처리 유닛(630)은,
상기 제1 움직임 정보 후보 리스트를 구축하는 경우, 추가할 으로서 적어도 하나의 제2의 양방향 움직임 정보 중의 각각의 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
각각의 상기 제2의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제2의 단방향 움직임 정보로 하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
기설정 규칙에 따라, 각각의 상기 제2의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제2의 단방향 움직임 정보로 하기 위한 것이며, 상기 기설정 규칙은 상기 제2의 양방향 움직임 정보로부터 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트이다.
선택적으로, 본 출원의 실시예에서, 상기 제1 움직임 정보 후보 리스트에서, 적어도 2개의 상기 제2의 양방향 움직임 정보에 대응되는 상기 제2의 단방향 움직임 정보가 소속된 리스트는 서로 다르며, 상기 소속된 리스트는 제2 리스트와 제1 리스트를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 제2의 양방향 움직임 정보를 위해 상기 제2의 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능하다.
선택적으로, 본 출원의 실시예에서, 상기 기기는 코딩단 또는 디코딩단에 이용되며, 상기 인코딩 또는 디코딩 유닛(640)은 또한,
상기 제2의 단방향 움직임 정보의 제2 식별자를 코딩된 코드 스트림에 기입하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 기기는 디코딩단에 이용되며, 상기 인코딩 또는 디코딩 유닛(640)은 또한,
디코딩된 코드 스트림으로부터 상기 제2의 단방향 움직임 정보의 제2 식별자를 획득하여, 상기 제2의 양방향 움직임 정보로부터 상기 제2 움직임 정보를 선택하는 데 이용하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 제2의 단방향 움직임 정보로 하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보를 병합 처리하기 전에, 각각의 상기 제2의 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보에 기반하여 스케일링하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 병합 처리는 가중 처리 또는 평균 처리이다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
각각의 상기 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하기 위한 것이며;
각각의 상기 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 처리 유닛(630)은 또한,
각각의 상기 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하는 다수의 제2 방법으로부터 제2 조정 방법을 선택하고;
상기 제2 조정 방법에 따라, 각각의 상기 제2의 양방향 움직임 정보를 하나의 상기 제2의 단방향 움직임 정보로 조정하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 제2 조정 방법을 다수의 상기 제2 방법에서 선택하는 것은,
상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행된다.
선택적으로, 본 출원의 실시예에서, 다수의 상기 제2 방법은,
상기 제2의 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 제2의 단방향 움직임 정보로 결정하는 방법;
상기 제2의 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 제2의 단방향 움직임 정보로 결정하는 방법;
상기 제2의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 방법;
상기 제2의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 방법;
상기 제2의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 방법;
상기 제2의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 방법; 중의 전체 또는 일부를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는,
추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함한다.
여기서, 상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택에 이용된다.
선택적으로, 본 출원의 실시예에서, 상기 제1 움직임 정보 후보 리스트의 구축 방식과 상기 제2 움직임 정보 후보 리스트의 구축 방식은 서로 같다.
선택적으로, 본 출원의 실시예에서, 상기 추가할 움직임 정보는,
공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 제로 움직임 벡터, 중의 적어도 하나를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 추가할 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터이다.
선택적으로, 본 출원의 실시예에서, 상기 서브 화상 블록의 개수는 2개이다.
선택적으로, 본 출원의 실시예에서, 적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어진다.
이해해야 할 것은, 당해 기기(600)는 상기 방법(300) 중의 처리 기기에 의해 구현되는 상응한 동작을 구현하는 데 이용될 수 있으며, 간결한 기재를 위해 여기서 더 이상 설명하지 않는다.
도 10은 본 출원의 실시예에 따른 비디오 처리 기기(700)의 예시적 블록도이다. 당해 비디오 처리 기기(700)는,
현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 구축 유닛(710);
상기 구축 유닛이 상기 제1 움직임 정보 후보 리스트를 구축하는 경우, 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용하기 위한 조정 유닛(720);
상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 선택 유닛(730);
적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 인코딩 또는 디코딩 유닛(740);을 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 조정 유닛(720)은 또한,
각각의 상기 타겟 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 타겟 단방향 움직임 정보로 하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 조정 유닛(720)은 또한,
기설정 규칙에 따라, 각각의 상기 타겟 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 타겟 단방향 움직임 정보로 하기 위한 것이며, 상기 기설정 규칙은 상기 타겟 양방향 움직임 정보로부터 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트이다.
선택적으로, 본 출원의 실시예에서, 상기 제1 움직임 정보 후보 리스트에서, 적어도 2개의 상기 타겟 양방향 움직임 정보에 대응되는 상기 타겟 단방향 움직임 정보가 소속된 리스트는 서로 다르며, 상기 소속된 리스트는 제2 리스트와 제1 리스트를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 타겟 양방향 움직임 정보를 위해 상기 타겟 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능하다.
선택적으로, 본 출원의 실시예에서, 상기 기기는 코딩단에 이용되며, 상기 인코딩 또는 디코딩 유닛(740)은 또한,
상기 타겟 단방향 움직임 정보의 식별자를 코딩된 코드 스트림에 기입하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 기기는 디코딩단에 이용되며, 상기 인코딩 또는 디코딩 유닛(740)은 또한,
디코딩된 코드 스트림으로부터 상기 타겟 단방향 움직임 정보의 식별자를 획득하여, 상기 선택 유닛이 상기 타겟 양방향 움직임 정보로부터 상기 타겟 단방향 움직임 정보를 선택하는 데 이용하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 조정 유닛(720)은 또한,
각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 타겟 단방향 움직임 정보로 하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 조정 유닛(720)은 또한,
각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보를 병합 처리하기 전에, 각각의 상기 타겟 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보에 기반하여 스케일링하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 병합 처리는 가중 처리 또는 평균 처리이다.
선택적으로, 본 출원의 실시예에서, 상기 조정 유닛(720)은 또한,
각각의 상기 타겟 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하기 위한 것이며,
각각의 상기 타겟 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 조정 유닛(720)은 또한,
각각의 상기 타겟 양방향 움직임 정보를 하나의 상기 타겟 단방향 움직임 정보로 조정하는 다수의 방법으로부터 조정 방법을 선택하고;
상기 조정 방법에 따라, 각각의 상기 타겟 양방향 움직임 정보를 상기 하나의 타겟 단방향 움직임 정보로 조정하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 조정 방법을 다수의 상기 방법에서 선택하는 것은,
상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행된다.
선택적으로, 본 출원의 실시예에서, 다수의 상기 제1 방법은,
상기 타겟 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 타겟 단방향 움직임 정보로 결정하는 방법;
상기 타겟 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 타겟 단방향 움직임 정보로 결정하는 방법;
상기 타겟 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
상기 타겟 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
상기 타겟 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
상기 타겟 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법; 중의 전체 또는 일부를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는,
추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며,
상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택에 이용된다.
선택적으로, 본 출원의 실시예에서, 상기 추가할 움직임 정보는,
공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 제로 움직임 벡터, 중의 적어도 하나를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 추가할 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터이다.
선택적으로, 본 출원의 실시예에서, 상기 서브 화상 블록의 개수는 2개이다.
선택적으로, 본 출원의 실시예에서, 적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어진다.
이해해야 할 것은, 당해 기기(700)는 상기 방법(400) 중의 처리 기기에 의해 구현되는 상응한 동작을 구현하는 데 이용될 수 있으며, 간결한 기재를 위해 여기서 더 이상 설명하지 않는다.
도 11은 본 출원의 실시예에 따른 비디오 처리 기기(800)의 예시적 블록도이다. 당해 비디오 처리 기기(800)는 구축 유닛(810), 선택 유닛(820), 인코딩 또는 디코딩 유닛(830)을 포함하며,
상기 구축 유닛(810)은 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 것이며, 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며, 상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택에 이용되며;
상기 선택 유닛(820)은, 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 것이며;
상기 인코딩 또는 디코딩 유닛(830)은, 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 것이다.
선택적으로, 본 출원의 실시예에서, 상기 제1 움직임 정보 후보 리스트의 구축 방식과 상기 제2 움직임 정보 후보 리스트의 구축 방식은 서로 같다.
선택적으로, 본 출원의 실시예에서, 상기 추가할 움직임 정보는,
공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 제로 움직임 벡터, 중의 적어도 하나를 포함한다.
선택적으로, 본 출원의 실시예에서, 상기 추가 가능한 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 상기 HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터이다.
선택적으로, 본 출원의 실시예에서, 상기 서브 화상 블록의 개수는 2개이다.
선택적으로, 본 출원의 실시예에서, 적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어진다.
이해해야 할 것은, 당해 기기(800)는 상기 방법(500) 중의 처리 기기에 의해 구현되는 상응한 동작을 구현하는 데 이용될 수 있으며, 간결한 기재를 위해 여기서 더 이상 설명하지 않는다.
도 12는 본 출원의 실시예의 비디오 처리 기기(900)의 예시적 블록도이다.
도 12에 나타낸 바와 같이, 당해 비디오 처리 기기(900)는 프로세서(910)를 포함할 수 있고, 메모리(920)를 더 포함할 수 있다.
이해해야 할 것은, 당해 비디오 처리 기기(900)는 비디오 처리 기기에 통상 포함되는 그밖의 다른 부품, 예를 들면 입출력 기기, 통신 인터페이스 등을 포함할 수도 있으며, 본 출원의 실시예는 이에 대해 한정하지 않는다.
메모리(920)는 컴퓨터 실행 가능한 명령을 저장하기 위한 것이다.
메모리(920)는 다양한 종류의 메모리일 수 있으며, 예를 들어 고속램(Random Access Memory, RAM)을 포함할 수 있고, 비휘발성 메모리(non-volatile memory) , 예를 들어 적어도 하나의 디스크 메모리를 포함할 수도 있으며, 본 출원의 실시예는 이에 대해 한정하지 않는다.
프로세서(910)는 당해 메모리(920)에 액세스하여, 당해 컴퓨터 실행 가능한 명령을 수행하여 상기 본 출원의 실시예에 따른 비디오 처리 방법 중의 동작을 수행하기 위한 것이다.
프로세서(910)는 마이크로 프로세서, 현장 프로그래머블 게이트 어레이(Field-Programmable Gate Array, FPGA), 중앙 프로세서(Central Processing unit, CPU), 그래픽 프로세서(Graphics Processing Unit, GPU) 등을 포함할 수 있으며, 본 출원의 실시예는 이에 대해 한정하지 않는다.
본 출원의 실시예에 따른 비디오 처리 기기는 본 출원의 실시예에 따른 비디오 처리 방법의 수행 주체에 대응할 수 있으며, 비디오 처리 기기 중의 각 모듈의 상기 및 그밖의 다른 동작 및/또는 기능은 각각 전술한 각 방법의 상응한 흐름을 구현하기 위한 것이며, 간결한 기재를 위해 여기서 더 이상 설명하지 않는다.
본 출원의 실시예는 전자 기기를 더 제공한다. 당해 전자 기기는 상기 본 출원의 각 실시예에 따른 비디오 처리를 위한 기기를 포함할 수 있다.
본 출원의 실시예는 컴퓨터 저장 매체를 더 제공한다. 당해 컴퓨터 저장 매체는 프로그램 코드를 저장하기 위한 것이며, 당해 프로그램 코드는 상기 본 출원의 실시예에 따른 비디오 처리 방법의 수행을 지시할 수 있다.
이해해야 할 것은, 본 출원의 실시예에서 “및/또는”이라는 용어는 단지 연관된 객체를 설명하는 연관 관계이며, 이는 3개의 관계가 있을 수 있음을 의미한다는 점이다. 예를 들어, A 및/또는 B는 A가 단독으로 존재하거나, A와 B가 동시에 존재하거나, B가 단독으로 존재함을 의미할 수 있다. 또한 본 명세서에서 부호 “/”는 일반적으로 전후의 연관된 객체가 “또는”의 관계를 가짐을 의미한다.
본 분야의 통상의 기술자는 본 명세서에서 개시된 실시예를 결합하여 설명한 각 예시의 유닛과 알고리즘 단계를 전자 하드웨어, 컴퓨터 소프트웨어 또는 이들 양자의 결합으로 구현할 수 있음을 알 수 있다. 하드웨어와 소프트웨어의 호환성을 명확하게 설명하기 위해 이상 설명에서 각 예시의 구성과 단계에 대해 기능에 따라 일반적인 설명을 했다. 이들 기능을 하드웨어 방식 아니면 소프트웨어 방식으로 수행할지는 기술적 방안의 특정 응용과 설계 구속 조건에 의해 결정된다. 전문 기술자는 설명된 기능을 각각의 특정 응용에 대해 다양한 방법으로 구현할 수 있으나, 이와 같은 구현은 본 출원의 범위를 벗어난 것으로 보아서는 안된다.
본 분야의 통상의 기술자라면 상기에서 설명한 시스템, 장치와 유닛의 구체적인 작동 프로세스는 편리하고도 간결한 설명을 위해 전술한 방법 실시예 중의 대응되는 프로세스를 참고할 수 있음을 명확하게 이해할 수 있으므로, 여기서 더 이상 설명하지 않는다.
본 출원에 따른 몇몇 실시예에서, 개시된 시스템, 장치와 방법을 그밖의 다른 방식으로 구현할 수 있음을 이해해야 할 것이다. 예를 들면, 이상 설명된 장치 실시예는 예시적인 것일 뿐이다. 예를 들어 상기 유닛의 구분은 논리 기능 상의 구분일 뿐이며, 실제 구현 시에는 또 다른 구분 방식이 있을 수 있다. 예를 들어 다수의 유닛 또는 어셈블리는 결합될 수 있거나 또는 다른 시스템에 집적될 수 있다. 또는, 일부 특징을 무시하거나 수행하지 않아도 된다. 또한, 표시 또는 토론된 상호간의 커플링 또는 직접적인 커플링 또는 통신 연결은 일부 인터페이스, 장치 또는 유닛의 간접적인 커플링 또는 통신 연결일 수도 있고, 전기적, 기계적 또는 그밖의 다른 형태의 연결일 수도 있다.
상기 분리 부품으로서 설명된 유닛은 물리적으로 분리된 것일 수도 있고 분리되지 않은 것일 수도 있다. 유닛으로서 표시된 부품은 물리적 유닛일 수도 있고 물리적 유닛이 아닐 수도 있다. 즉, 하나의 지점에 위치할 수 있거나 또는 다수의 네트워크 유닛에 분산될 수도 있다. 실제 필요에 따라 이 중의 일부 또는 전체 유닛을 선택하여 본 출원의 실시예에 따른 기술적 방안의 목적을 구현할 수 있다.
또한, 본 출원의 각 실시예 중의 각각의 기능 유닛은 하나의 처리 유닛에 집적될 수도 있고, 각각의 유닛에 물리적으로 단독 존재할 수도 있으며, 2개 또는 2개 이상의 유닛이 하나의 유닛에 집적될 수도 있다. 상기 집적된 유닛은 하드웨어의 형태로 구현될 수도 있고, 소프트웨어 기능 유닛의 형태로 구현될 수도 있다.
상기 집적된 유닛은 소프트웨어 기능 유닛의 형태로 구현되고 독립적인 제품으로서 판매 또는 이용되는 경우, 하나의 컴퓨터 판독가능한 저장 매체에 저장될 수 있다. 이러한 이해에 따르면, 본 출원의 기술적 방안은 본질적으로 또는 종래기술에 대해 기여한 부분 또는 당해 기술적 방안의 전체 또는 일부는 소프트웨어 제품의 형태로 구현될 수 있다. 당해 컴퓨터 소프트웨어 제품은 하나의 저장 매체에 저장되며, 하나의 컴퓨터 기기(PC 컴퓨터, 서버, 또는 네트워크 기기 등일 수 있음)로 하여금 본 출원의 각 실시예에 따른 방법의 전체 또는 일부 단계를 수행하도록 하는 다수의 명령을 포함한다. 전술한 저장 매체는, USB, 이동식 하드디스크, 롬(ROM, Read-Only Memory), 램(RAM, Random Access Memory), 디스켓 또는 광디스크 등과 같이 프로그램 코드를 저장할 수 있는 다양한 매체를 포함한다.
상기 바는 본 출원의 구체적인 실시형태일 뿐이며, 본 출원의 보호 범위는 이에 한정되지 않는다. 본 기술분야에 익숙한 기술자라면 누구든지 본 출원이 개시한 기술적 범위 내에서 다양하고도 등가적인 수정 또는 교체를 쉽게 생각할 수 있으며, 이러한 수정 또는 교체는 모두 본 출원의 보호 범위에 포함되어야 한다. 따라서, 본 발명의 보호 범위는 후술되는 특허청구범위의 보호 범위를 기준으로 해야 한다.

Claims (132)

  1. 비디오 처리 방법에 있어서,
    현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 단계;
    적어도 하나의 양방향 움직임 정보를 포함하는 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 화상 블록을 위해 움직임 정보를 각각 선택하는 단계;
    적어도 하나의 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하는 단계;
    를 포함하는 것을 특징으로 하는 비디오 처리 방법. 
  2. 제1항에 있어서,
    상기 제1 움직임 정보 후보 리스트 중의 적어도 일부 움직임 정보에 대응되는 움직임 벡터 값은 정밀도 변환이 수행된 것을 특징으로 하는 비디오 처리 방법.
  3. 제1항에 있어서,
    상기 방법은,
    상기 서브 화상 블록에 대응하여 선택한 움직임 정보가 제1의 양방향 움직임 정보인 경우, 기설정 규칙에 따라 상기 제1의 양방향 움직임 정보를 처리하여 상기 제1 화상 블록의 인코딩 또는 디코딩에 이용하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  4. 제3항에 있어서,
    상기 제1의 양방향 움직임 정보가 제1의 타겟 양방향 움직임 정보인 경우, 상기 제1의 타겟 양방향 움직임 정보를 처리하는 기설정 규칙은, 상기 제1의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값의 정밀도를 변환하는 것이며;
    상기 제1의 양방향 움직임 정보가 상기 제1의 양방향 타겟 움직임 정보와는 다른 제2의 양방향 움직임 정보인 경우, 상기 제2의 타겟 양방향 움직임 정보를 처리하는 기설정 규칙은, 상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하여 상기 서브 화상 블록의 움직임 정보로 하는 것을 특징으로 하는 비디오 처리 방법.
  5. 제3항에 있어서,
    상기 기설정 규칙에 따라 상기 제1의 양방향 움직임 정보를 처리하는 단계는,
    상기 제1의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값의 정밀도를 변환하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  6. 제5항에 있어서,
    상기 제1의 양방향 움직임 벡터 값의 정밀도를 변환하는 단계는,
    상기 제1의 양방향 움직임 정보에 포함된 움직임 벡터 값의 정밀도를 풀 픽셀 정밀도로 변환하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법. 
  7. 제3항, 제5항, 및 제6항 중 어느 한 항에 있어서,
    상기 기설정 규칙에 따라 상기 제1의 양방향 움직임 정보를 처리하는 단계는,
    상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하여, 상기 서브 화상 블록의 움직임 정보로 하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  8. 제7항에 있어서,
    상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하는 단계는,
    상기 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제1의 단방향 움직임 정보로 하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  9. 제8항에 있어서,
    상기 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제1의 단방향 움직임 정보로 하는 단계는,
    기설정 규칙에 따라, 상기 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제1의 단방향 움직임 정보로 하는 단계를 포함하며,
    상기 기설정 규칙은 상기 제1의 양방향 움직임 정보로부터, 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트인 것을 특징으로 하는 비디오 처리 방법.
  10. 제8항에 있어서,
    상기 제1의 양방향 움직임 정보를 위해 상기 제1의 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능한 것을 특징으로 하는 비디오 처리 방법.
  11. 제8항 내지 제10항 중 어느 한 항에 있어서,
    상기 방법은 코딩단에 이용되며,
    상기 방법은,
    상기 제1의 단방향 움직임 정보의 제1 식별자를 코딩된 코드 스트림에 기입하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  12. 제8항 내지 제10항 중 어느 한 항에 있어서,
    상기 방법은 디코딩단에 이용되며,
    상기 방법은,
    디코딩된 코드 스트림으로부터 상기 제1의 단방향 움직임 정보의 제1 식별자를 획득하여, 상기 제1의 양방향 움직임 정보로부터 상기 제1의 단방향 움직임 정보를 선택하는 데 이용하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  13. 제7항에 있어서,
    상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하는 단계는,
    상기 제1의 양방향 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 제1의 단방향 움직임 정보로 하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  14. 제13항에 있어서,
    상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하는 단계는,
    상기 제1의 양방향 움직임 정보를 병합 처리하기 전에, 상기 제1의 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보를 토대로 스케일링하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  15. 제13항 또는 제14항에 있어서,
    상기 병합 처리는 가중 처리 또는 평균 처리인 것을 특징으로 하는 비디오 처리 방법.
  16. 제15항에 있어서,
    상기 방법은,
    상기 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 상기 제1의 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용하는 단계를 더 포함하며,
    상기 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  17. 제7항 내지 제16항 중 어느 한 항에 있어서,
    상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하는 단계는,
    상기 제1의 양방향 움직임 정보를 하나의 상기 제1의 단방향 움직임 정보로 조정하는 다수의 제1 방법에서 제1 조정 방법을 선택하는 단계;
    상기 제1 조정 방법에 따라, 상기 제1의 양방향 움직임 정보를 상기 제1의 단방향 움직임 정보로 조정하는 단계; 를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  18. 제17항에 있어서,
    상기 제1 조정 방법을 이를 포함하는 다수의 상기 제1 방법에서 선택하는 것은,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행되는 것을 특징으로 하는 비디오 처리 방법.
  19. 제17항 또는 제18항에 있어서,
    다수의 상기 제1 방법은,
    상기 제1의 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 제1의 단방향 움직임 정보로 결정하는 방법;
    상기 제1의 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 제1의 단방향 움직임 정보로 결정하는 방법;
    상기 제1의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제1의 단방향 움직임 정보를 얻는 방법;
    상기 제1의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법;
    상기 제1의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법;
    상기 제1의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제1의 단방향 움직임 정보를 얻는 방법; 중의 전체 또는 일부를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  20. 제1항 내지 제19항 중 어느 한 항에 있어서,
    상기 방법은,
    상기 제1 움직임 정보 후보 리스트를 구축하는 경우, 적어도 하나의 추가할 제2의 양방향 움직임 정보 중의 각각의 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  21. 제20항에 있어서,
    상기 추가할 움직임 정보 중의 적어도 하나의 제1의 양방향 움직임 정보 중의 각각의 상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하는 단계는,
    각각의 상기 제2의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제2의 단방향 움직임 정보로 하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  22. 제21항에 있어서,
    상기 각각의 상기 제2의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제2의 단방향 움직임 정보로 하는 단계는,
    기설정 규칙에 따라, 각각의 상기 제2의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제2의 단방향 움직임 정보로 하는 단계를 포함하며,
    상기 기설정 규칙은 상기 제2의 양방향 움직임 정보로부터 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트인 것을 특징으로 하는 비디오 처리 방법.
  23. 제21항에 있어서,
    상기 제1 움직임 정보 후보 리스트에서, 적어도 2개의 상기 제2의 양방향 움직임 정보에 대응되는 상기 제2의 단방향 움직임 정보가 소속된 리스트는 서로 다르며, 상기 소속된 리스트는 제2 리스트와 제1 리스트를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  24. 제21항에 있어서,
    상기 제2의 양방향 움직임 정보를 위해 상기 제2의 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능한 것을 특징으로 하는 비디오 처리 방법.
  25. 제21항 내지 제24항 중 어느 한 항에 있어서,
    상기 방법은 코딩단에 이용되며,
    상기 방법은,
    상기 제2의 단방향 움직임 정보의 제2 식별자를 코딩된 코드 스트림에 기입하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  26. 제21항 내지 제24항 중 어느 한 항에 있어서,
    상기 방법은 디코딩단에 이용되며,
    상기 방법은,
    디코딩된 코드 스트림으로부터 상기 제2의 단방향 움직임 정보의 제2 식별자를 획득하여, 상기 제2의 양방향 움직임 정보로부터 상기 제2 움직임 정보를 선택하는 데 이용하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  27. 제20항에 있어서,
    상기 추가할 움직임 정보 중의 적어도 하나의 제2의 양방향 움직임 정보 중의 각각의 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하는 단계는,
    각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 제2의 단방향 움직임 정보로 하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  28. 제27항에 있어서,
    상기 추가할 움직임 정보 중의 적어도 하나의 제2의 양방향 움직임 정보 중의 각각의 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하는 단계는,
    각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보를 병합 처리하기 전에, 각각의 상기 제2의 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보에 기반하여 스케일링하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  29. 제27항 또는 제28항에 있어서,
    상기 병합 처리는 가중 처리 또는 평균 처리인 것을 특징으로 하는 비디오 처리 방법.
  30. 제29항에 있어서,
    상기 방법은,
    각각의 상기 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용하는 단계를 더 포함하며,
    각각의 상기 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  31. 제20항 내지 제30항 중 어느 한 항에 있어서,
    추가할 움직임 정보 중의 적어도 하나의 제2의 양방향 움직임 정보 중의 각각의 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하는 단계는,
    각각의 상기 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하는 다수의 제2 방법으로부터 제2 조정 방법을 선택하는 단계;
    상기 제2 조정 방법에 따라, 각각의 상기 제2의 양방향 움직임 정보를 하나의 상기 제2의 단방향 움직임 정보로 조정하는 단계; 를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  32. 제31항에 있어서,
    상기 제2 조정 방법을 다수의 상기 제2 방법에서 선택하는 것은,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행되는 것을 특징으로 하는 비디오 처리 방법.
  33. 제31항 또는 제32항에 있어서,
    다수의 상기 제2 방법은,
    상기 제2의 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 제2의 단방향 움직임 정보로 결정하는 방법;
    상기 제2의 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 제2의 단방향 움직임 정보로 결정하는 방법;
    상기 제2의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 방법;
    상기 제2의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 방법;
    상기 제2의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 방법;
    상기 제2의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 방법; 중의 전체 또는 일부를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  34. 제1항 내지 제33항 중 어느 한 항에 있어서,
    상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는,
    추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며,
    상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것임을 특징으로 하는 비디오 처리 방법.
  35. 제34항에 있어서,
    상기 제1 움직임 정보 후보 리스트의 구축 방식과 상기 제2 움직임 정보 후보 리스트의 구축 방식은 서로 같은 것을 특징으로 하는 비디오 처리 방법.
  36. 제1항 내지 제35항 중 어느 한 항에 있어서,
    상기 추가할 움직임 정보는,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 제로 움직임 벡터, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  37. 제1항 내지 제36항 중 어느 한 항에 있어서,
    상기 추가할 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터인 것을 특징으로 하는 비디오 처리 방법.
  38. 제1항 내지 제37항 중 어느 한 항에 있어서,
    상기 서브 화상 블록의 개수는 2개인 것을 특징으로 하는 비디오 처리 방법.
  39. 제1항 내지 제38항 중 어느 한 항에 있어서,
    적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어진 것을 특징으로 하는 비디오 처리 방법.
  40. 비디오 처리 방법에 있어서,
    현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 경우, 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용하는 단계;
    상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하는 단계;
    적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하는 단계;
    를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  41. 제40항에 있어서,
    상기 추가할 움직임 정보는 상기 제1 화상 블록의 인접 화상 블록의 움직임 정보를 토대로 결정되는 것을 특징으로 하는 비디오 처리 방법.
  42. 제40항 또는 제41항에 있어서,
    상기 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 상기 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하는 단계는,
    각각의 상기 타겟 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 타겟 단방향 움직임 정보로 하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  43. 제42항에 있어서,
    상기 각각의 상기 타겟 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 타겟 단방향 움직임 정보로 하는 단계는,
    기설정 규칙에 따라, 각각의 상기 타겟 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 타겟 단방향 움직임 정보로 하는 단계를 포함하며,
    상기 기설정 규칙은 상기 타겟 양방향 움직임 정보로부터 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트인 것을 특징으로 하는 비디오 처리 방법.
  44. 제42항에 있어서,
    상기 제1 움직임 정보 후보 리스트에서, 적어도 2개의 상기 타겟 양방향 움직임 정보에 대응되는 상기 타겟 단방향 움직임 정보가 소속된 리스트는 서로 다르며, 상기 소속된 리스트는 제2 리스트와 제1 리스트를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  45. 제42항에 있어서,
    상기 타겟 양방향 움직임 정보를 위해 상기 타겟 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능한 것을 특징으로 하는 비디오 처리 방법.
  46. 제42항 내지 제45항 중 어느 한 항에 있어서,
    상기 방법은 코딩단에 이용되며,
    상기 방법은,
    상기 타겟 단방향 움직임 정보의 식별자를 코딩된 코드 스트림에 기입하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  47. 제42항 내지 제45항 중 어느 한 항에 있어서,
    상기 방법은 디코딩단에 이용되며,
    상기 방법은,
    디코딩된 코드 스트림으로부터 상기 타겟 단방향 움직임 정보의 식별자를 획득하여, 상기 타겟 양방향 움직임 정보로부터 상기 타겟 단방향 움직임 정보를 선택하는 데 이용하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  48. 제40항에 있어서,
    상기 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하는 단계는,
    각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 타겟 단방향 움직임 정보로 하는 단계를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  49. 제48항에 있어서,
    상기 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하는 단계는,
    각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보를 병합 처리하기 전에, 각각의 상기 타겟 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보에 기반하여 스케일링하는 단계를 더 포함하는 것을 특징으로 하는 비디오 처리 방법.
  50. 제48항 또는 제49항에 있어서,
    상기 병합 처리는 가중 처리 또는 평균 처리인 것을 특징으로 하는 비디오 처리 방법.
  51. 제50항에 있어서,
    상기 방법은,
    각각의 상기 타겟 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용하는 단계를 더 포함하며,
    각각의 상기 타겟 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  52. 제40항 내지 제51항 중 어느 한 항에 있어서,
    추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하는 단계는,
    각각의 상기 타겟 양방향 움직임 정보를 하나의 상기 타겟 단방향 움직임 정보로 조정하는 다수의 방법으로부터 조정 방법을 선택하는 단계;
    상기 조정 방법에 따라, 각각의 상기 타겟 양방향 움직임 정보를 상기 하나의 타겟 단방향 움직임 정보로 조정하는 단계;를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  53. 제52항에 있어서,
    상기 조정 방법을 다수의 상기 방법에서 선택하는 것은,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행되는 것을 특징으로 하는 비디오 처리 방법.
  54. 제52항 또는 제53항에 있어서,
    다수의 상기 제1 방법은,
    상기 타겟 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 타겟 단방향 움직임 정보로 결정하는 방법;
    상기 타겟 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 타겟 단방향 움직임 정보로 결정하는 방법;
    상기 타겟 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
    상기 타겟 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
    상기 타겟 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
    상기 타겟 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
    중의 전체 또는 일부를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  55. 제40항 내지 제54항 중 어느 한 항에 있어서,
    상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는,
    추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며,
    상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것임을 특징으로 하는 비디오 처리 방법.
  56. 제40항 내지 제55항 중 어느 한 항에 있어서,
    상기 추가할 움직임 정보는,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  57. 제40항 내지 제56항 중 어느 한 항에 있어서,
    상기 추가할 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터인 것을 특징으로 하는 비디오 처리 방법.
  58. 제40항 내지 제57항 중 어느 한 항에 있어서,
    상기 서브 화상 블록의 개수는 2개인 것을 특징으로 하는 비디오 처리 방법.
  59. 제40항 내지 제58항 중 어느 한 항에 있어서,
    적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어지는 것을 특징으로 하는 비디오 처리 방법.
  60. 비디오 처리 방법에 있어서,
    현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하는 단계로서, 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며, 상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것인 단계;
    상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하는 단계;
    적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하는 단계;
    를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  61. 제60항에 있어서,
    상기 제1 움직임 정보 후보 리스트의 구축 방식과 상기 제2 움직임 정보 후보 리스트의 구축 방식은 서로 같은 것을 특징으로 하는 비디오 처리 방법.
  62. 제60항 또는 제61항에 있어서,
    추가할 움직임 정보는,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 제로 움직임 벡터 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 방법.
  63. 제62항에 있어서,
    상기 추가 가능한 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 상기 HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터인 것을 특징으로 하는 비디오 처리 방법.
  64. 제60항 내지 제63항 중 어느 한 항에 있어서,
    상기 서브 화상 블록의 개수는 2개인 것을 특징으로 하는 비디오 처리 방법.
  65. 제60항 내지 제64항 중 어느 한 항에 있어서,
    적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어지는 것을 특징으로 하는 비디오 처리 방법.
  66. 비디오 처리 기기에 있어서,
    현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 구축 유닛;
    적어도 하나의 양방향 움직임 정보를 포함하는 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 선택 유닛;
    적어도 하나의 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 인코딩 또는 디코딩 유닛;
    을 포함하는 것을 특징으로 하는 비디오 처리 기기. 
  67. 제66항에 있어서,
    상기 제1 움직임 정보 후보 리스트 중의 적어도 일부 움직임 정보에 대응되는 움직임 벡터 값은 정밀도 변환이 수행된 것임을 특징으로 하는 비디오 처리 기기.
  68. 제66항에 있어서,
    상기 기기는 처리 유닛을 더 포함하며,
    상기 처리 유닛은, 상기 서브 화상 블록에 대응하여 선택한 움직임 정보가 제1의 양방향 움직임 정보인 경우, 기설정 규칙에 따라 상기 제1의 양방향 움직임 정보를 처리하여 상기 제1 화상 블록의 인코딩 또는 디코딩에 이용하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  69. 제68항에 있어서,
    상기 제1의 양방향 움직임 정보는 제1의 타겟 양방향 움직임 정보와 제2의 타겟 양방향 움직임 정보를 포함하며,
    상기 제1의 타겟 양방향 움직임 정보를 처리하는 기설정 규칙은, 상기 제1의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값의 정밀도를 변환하는 것이며,
    상기 제2의 타겟 양방향 움직임 정보를 처리하는 기설정 규칙은, 상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하여 상기 서브 화상 블록의 움직임 정보로 하는 것임을 특징으로 하는 비디오 처리 기기.
  70. 제68항에 있어서,
    상기 처리 유닛은 또한,
    상기 제1의 양방향 움직임 정보에 포함된 적어도 하나의 움직임 벡터 값의 정밀도를 변환하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  71. 제60항에 있어서,
    상기 처리 유닛은 또한,
    상기 제1의 양방향 움직임 정보에 포함된 움직임 벡터 값의 정밀도를 풀 픽셀 정밀도로 변환하기 위한 것임을 특징으로 하는 비디오 처리 기기. 
  72. 제68항, 제70항, 및 제71항 중 어느 한 항에 있어서,
    상기 처리 유닛은 또한,
    상기 제1의 양방향 움직임 정보를 하나의 제1의 단방향 움직임 정보로 조정하여, 상기 서브 화상 블록의 움직임 정보로 하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  73. 제72항에 있어서,
    상기 처리 유닛은 또한,
    상기 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제1의 단방향 움직임 정보로 하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  74. 제73항에 있어서,
    상기 처리 유닛은 또한,
    기설정 규칙에 따라, 상기 제1의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제1의 단방향 움직임 정보로 하기 위한 것이며,
    상기 기설정 규칙은 상기 제1의 양방향 움직임 정보로부터, 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트인 것을 특징으로 하는 비디오 처리 기기.
  75. 제73항에 있어서,
    상기 제1의 양방향 움직임 정보를 위해 상기 제1의 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능한 것을 특징으로 하는 비디오 처리 기기.
  76. 제73항 내지 제75항 중 어느 한 항에 있어서,
    상기 인코딩 또는 디코딩 유닛은 또한,
    상기 제1의 단방향 움직임 정보의 제1 식별자를 코딩된 코드 스트림에 기입하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  77. 제73항 내지 제75항 중 어느 한 항에 있어서,
    상기 기기는 디코딩단에 이용되고,
    상기 인코딩 또는 디코딩 유닛은 또한,
    디코딩된 코드 스트림으로부터 상기 제1의 단방향 움직임 정보의 제1 식별자를 획득하여, 상기 제1의 양방향 움직임 정보로부터 상기 제1의 단방향 움직임 정보를 선택하는 데 이용하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  78. 제72항에 있어서,
    상기 인코딩 또는 디코딩 유닛은 또한,
    상기 제1의 양방향 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 제1의 단방향 움직임 정보로 하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  79. 제78항에 있어서,
    상기 처리 유닛은 또한,
    상기 제1의 양방향 움직임 정보를 병합 처리하기 전에, 상기 제1의 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보를 토대로 스케일링하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  80. 제78항 또는 제79항에 있어서,
    상기 병합 처리는 가중 처리 또는 평균 처리인 것을 특징으로 하는 비디오 처리 기기.
  81. 제80항에 있어서,
    상기 처리 유닛은 또한,
    상기 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 상기 제1의 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용하기 위한 것이며,
    상기 제1의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  82. 제65항 내지 제81항 중 어느 한 항에 있어서,
    상기 처리 유닛은 또한,
    상기 제1의 양방향 움직임 정보를 하나의 상기 제1의 단방향 움직임 정보로 조정하는 다수의 제1 방법에서 제1 조정 방법을 선택하고;
    상기 제1 조정 방법에 따라, 상기 제1의 양방향 움직임 정보를 상기 제1의 단방향 움직임 정보로 조정하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  83. 제82항에 있어서,
    상기 제1 조정 방법을 이를 포함하는 다수의 상기 제1 방법에서 선택하는 것은,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행되는 것을 특징으로 하는 비디오 처리 기기.
  84. 제82항 또는 제83항에 있어서,
    다수의 상기 제1 방법은,
    상기 제1의 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 제1의 단방향 움직임 정보로 결정하는 기기;
    상기 제1의 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 제1의 단방향 움직임 정보로 결정하는 기기;
    상기 제1의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제1의 단방향 움직임 정보를 얻는 기기;
    상기 제1의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여 상기 제1의 단방향 움직임 정보를 얻는 기기;
    상기 제1의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제1의 단방향 움직임 정보를 얻는 기기;
    상기 제1의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여 상기 제1의 단방향 움직임 정보를 얻는 기기;
    중의 전체 또는 일부를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  85. 제66항 내지 제84항 중 어느 한 항에 있어서,
    처리 유닛을 더 포함하며,
    상기 처리 유닛은,
    상기 제1 움직임 정보 후보 리스트를 구축하는 경우, 적어도 하나의 추가할 제2의 양방향 움직임 정보 중의 각각의 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  86. 제85항에 있어서,
    상기 처리 유닛은 또한,
    각각의 상기 제2의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제2의 단방향 움직임 정보로 하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  87. 제86항에 있어서,
    상기 처리 유닛은 또한,
    기설정 규칙에 따라, 각각의 상기 제2의 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 제2의 단방향 움직임 정보로 하기 위한 것이며,
    상기 기설정 규칙은 상기 제2의 양방향 움직임 정보로부터 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트인 것을 특징으로 하는 비디오 처리 기기.
  88. 제86항에 있어서,
    상기 제1 움직임 정보 후보 리스트에서, 적어도 2개의 상기 제2의 양방향 움직임 정보에 대응되는 상기 제2의 단방향 움직임 정보가 소속된 리스트는 서로 다르며, 상기 소속된 리스트는 제2 리스트와 제1 리스트를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  89. 제86항에 있어서,
    상기 제2의 양방향 움직임 정보를 위해 상기 제2의 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능한 것을 특징으로 하는 비디오 처리 기기.
  90. 제86항 내지 제89항 중 어느 한 항에 있어서,
    상기 기기는 코딩단 또는 디코딩단에 이용되며,
    상기 인코딩 또는 디코딩 유닛은 또한,
    상기 제2의 단방향 움직임 정보의 제2 식별자를 코딩된 코드 스트림에 기입하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  91. 제86항 내지 제89항 중 어느 한 항에 있어서,
    상기 기기는 디코딩단에 이용되며,
    상기 인코딩 또는 디코딩 유닛은 또한,
    디코딩된 코드 스트림으로부터 상기 제2의 단방향 움직임 정보의 제2 식별자를 획득하여, 상기 제2의 양방향 움직임 정보로부터 상기 제2 움직임 정보를 선택하는 데 이용하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  92. 제85항에 있어서,
    상기 처리 유닛은 또한,
    각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 제2의 단방향 움직임 정보로 하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  93. 제92항에 있어서,
    상기 처리 유닛은 또한,
    각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보를 병합 처리하기 전에, 각각의 상기 제2의 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보에 기반하여 스케일링하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  94. 제92항 또는 제93항에 있어서,
    상기 병합 처리는 가중 처리 또는 평균 처리인 것을 특징으로 하는 비디오 처리 기기.
  95. 제94항에 있어서,
    상기 처리 유닛은 또한,
    각각의 상기 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 각각의 상기 제2의 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용하기 위한 것이며,
    각각의 상기 제2의 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  96. 제85항 내지 제95항 중 어느 한 항에 있어서,
    상기 처리 유닛은 또한,
    각각의 상기 제2의 양방향 움직임 정보를 하나의 제2의 단방향 움직임 정보로 조정하는 다수의 제2 방법으로부터 제2 조정 방법을 선택하고;
    상기 제2 조정 방법에 따라, 각각의 상기 제2의 양방향 움직임 정보를 하나의 상기 제2의 단방향 움직임 정보로 조정하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  97. 제96항에 있어서,
    상기 제2 조정 방법을 다수의 상기 제2 방법에서 선택하는 것은,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행되는 것을 특징으로 하는 비디오 처리 기기.
  98. 제96항 또는 제97항에 있어서,
    다수의 상기 제2 방법은,
    상기 제2의 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 제2의 단방향 움직임 정보로 결정하는 기기;
    상기 제2의 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 제2의 단방향 움직임 정보로 결정하는 기기;
    상기 제2의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 기기;
    상기 제2의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 기기;
    상기 제2의 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 기기;
    상기 제2의 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 제2의 단방향 움직임 정보를 획득하는 기기;
    중의 전체 또는 일부를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  99. 제66항 내지 제98항 중 어느 한 항에 있어서,
    상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는,
    추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하고,
    상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것임을 특징으로 하는 비디오 처리 기기.
  100. 제99항에 있어서,
    상기 제1 움직임 정보 후보 리스트의 구축 방식과 상기 제2 움직임 정보 후보 리스트의 구축 방식은 서로 같은 것을 특징으로 하는 비디오 처리 기기.
  101. 제66항 내지 제100항 중 어느 한 항에 있어서,
    상기 추가할 움직임 정보는,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 제로 움직임 벡터, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  102. 제66항 내지 제101항 중 어느 한 항에 있어서,
    상기 추가할 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터인 것을 특징으로 하는 비디오 처리 기기.
  103. 제66항 내지 제102항 중 어느 한 항에 있어서,
    상기 서브 화상 블록의 개수는 2개인 것을 특징으로 하는 비디오 처리 기기.
  104. 제66항 내지 제103항 중 어느 한 항에 있어서,
    적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어지는 것을 특징으로 하는 비디오 처리 기기.
  105. 비디오 처리 기기에 있어서,
    현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 구축 유닛;
    상기 구축 유닛이 상기 제1 움직임 정보 후보 리스트를 구축하는 경우, 추가할 움직임 정보 중의 적어도 하나의 타겟 양방향 움직임 정보 중의 각각의 타겟 양방향 움직임 정보를 하나의 타겟 단방향 움직임 정보로 조정하여, 상기 제1 움직임 정보 후보 리스트의 구축에 이용하기 위한 조정 유닛;
    상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 선택 유닛;
    적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 인코딩 또는 디코딩 유닛;
    을 포함하는 것을 특징으로 하는 비디오 처리 기기.
  106. 제105항에 있어서,
    상기 추가할 움직임 정보는 상기 제1 화상 블록의 인접 화상 블록의 움직임 정보를 토대로 결정되는 것을 특징으로 하는 비디오 처리 기기.
  107. 제105항 또는 제106항에 있어서,
    상기 조정 유닛은 또한,
    각각의 상기 타겟 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 타겟 단방향 움직임 정보로 하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  108. 제107항에 있어서,
    상기 조정 유닛은 또한,
    기설정 규칙에 따라, 각각의 상기 타겟 양방향 움직임 정보로부터 하나의 움직임 정보를 선택하여 상기 타겟 단방향 움직임 정보로 하기 위한 것이며,
    상기 기설정 규칙은 상기 타겟 양방향 움직임 정보로부터 특정 리스트에 마련된 단방향 움직임 정보를 선택하도록 지시하기 위한 것이며, 상기 특정 리스트는 제2 리스트 또는 제1 리스트인 것을 특징으로 하는 비디오 처리 기기.
  109. 제107항에 있어서,
    상기 제1 움직임 정보 후보 리스트에서, 적어도 2개의 상기 타겟 양방향 움직임 정보에 대응되는 상기 타겟 단방향 움직임 정보가 소속된 리스트는 서로 다르며, 상기 소속된 리스트는 제2 리스트와 제1 리스트를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  110. 제107항에 있어서,
    상기 타겟 양방향 움직임 정보를 위해 상기 타겟 단방향 움직임 정보를 선택하는 선택 방식은 업데이트 가능한 것을 특징으로 하는 비디오 처리 기기.
  111. 제107항 내지 제110항 중 어느 한 항에 있어서,
    상기 기기는 코딩단에 이용되며,
    상기 인코딩 또는 디코딩 유닛은 또한,
    상기 타겟 단방향 움직임 정보의 식별자를 코딩된 코드 스트림에 기입하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  112. 제107항 내지 제110항 중 어느 한 항에 있어서,
    상기 기기는 디코딩단에 이용되며,
    상기 인코딩 또는 디코딩 유닛은 또한,
    디코딩된 코드 스트림으로부터 상기 타겟 단방향 움직임 정보의 식별자를 획득하여, 상기 선택 유닛이 상기 타겟 양방향 움직임 정보로부터 상기 타겟 단방향 움직임 정보를 선택하는 데 이용하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  113. 제105항에 있어서,
    상기 조정 유닛은 또한,
    각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보를 병합 처리하여 하나의 움직임 정보를 얻어, 상기 타겟 단방향 움직임 정보로 하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  114. 제113항에 있어서,
    상기 조정 유닛은 또한,
    각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보를 병합 처리하기 전에, 각각의 상기 타겟 양방향 움직임 정보 중의 어느 하나의 움직임 정보를 다른 하나의 움직임 정보에 기반하여 스케일링하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  115. 제113항 또는 제114항에 있어서,
    상기 병합 처리는 가중 처리 또는 평균 처리인 것을 특징으로 하는 비디오 처리 기기.
  116. 제115항에 있어서,
    상기 조정 유닛은 또한,
    각각의 상기 타겟 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치를 결정하여, 상기 가중치를 토대로 각각의 상기 타겟 양방향 움직임 정보 중의 움직임 정보에 대해 상기 가중 처리를 수행하는 데 이용하기 위한 것이며,
    각각의 상기 타겟 양방향 움직임 정보 중의 각각의 움직임 정보의 가중치의 영향 요소는,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  117. 제105항 내지 제116항 중 어느 한 항에 있어서,
    상기 조정 유닛은 또한,
    각각의 상기 타겟 양방향 움직임 정보를 하나의 상기 타겟 단방향 움직임 정보로 조정하는 다수의 방법으로부터 조정 방법을 선택하고;
    상기 조정 방법에 따라, 각각의 상기 타겟 양방향 움직임 정보를 상기 하나의 타겟 단방향 움직임 정보로 조정하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  118. 제117항에 있어서,
    상기 조정 방법을 다수의 상기 방법에서 선택하는 것은,
    상기 제1 화상 블록의 크기, 상기 제1 화상 블록의 픽셀 값, 상기 제1 화상 블록의 인접 영역의 픽셀 값, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제1 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 상기 제1 움직임 정보 후보 리스트에 이미 추가된 움직임 정보 중의 제2 리스트에 속하는 움직임 정보의 크기 및/또는 개수, 중의 적어도 하나를 토대로 수행되는 것을 특징으로 하는 비디오 처리 기기.
  119. 제117항 또는 제118항에 있어서,
    다수의 상기 제1 방법은,
    상기 타겟 양방향 움직임 정보 중의 제1 리스트에 속하는 움직임 정보를 상기 타겟 단방향 움직임 정보로 결정하는 방법;
    상기 타겟 양방향 움직임 정보 중의 제2 리스트에 속하는 움직임 정보를 상기 타겟 단방향 움직임 정보로 결정하는 방법;
    상기 타겟 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
    상기 타겟 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 가중 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
    상기 타겟 양방향 움직임 정보 중의 상기 제2 리스트에 속하는 움직임 정보를 상기 제1 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제1 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제2 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
    상기 타겟 양방향 움직임 정보 중의 상기 제1 리스트에 속하는 움직임 정보를 상기 제2 리스트에 속하는 움직임 정보에 기반하여 스케일링하고, 상기 제2 리스트에 속하는 움직임 정보와, 스케일링된 후의 상기 제1 리스트에 속하는 움직임 정보를 평균 처리하여, 상기 타겟 단방향 움직임 정보를 획득하는 방법;
    중의 전체 또는 일부를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  120. 제105항 내지 제119항 중 어느 한 항에 있어서,
    상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는,
    추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며,
    상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것임을 특징으로 하는 비디오 처리 기기.
  121. 제105항 내지 제120항 중 어느 한 항에 있어서,
    상기 추가할 움직임 정보는,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  122. 제105항 내지 제121항 중 어느 한 항에 있어서,
    상기 추가할 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터인 것을 특징으로 하는 비디오 처리 기기.
  123. 제105항 내지 제122항 중 어느 한 항에 있어서,
    상기 서브 화상 블록의 개수는 2개인 것을 특징으로 하는 비디오 처리 기기.
  124. 제105항 내지 제123항 중 어느 한 항에 있어서,
    적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어지는 것을 특징으로 하는 비디오 처리 기기.
  125. 비디오 처리 기기에 있어서,
    구축 유닛, 선택 유닛, 및 인코딩 또는 디코딩 유닛을 포함하고,
    상기 구축 유닛은, 현재 프레임의 제1 화상 블록을 위해 제1 움직임 정보 후보 리스트를 구축하기 위한 것이며, 상기 제1 움직임 정보 후보 리스트와 제2 움직임 정보 후보 리스트는, 추가 가능한 움직임 정보의 종류가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의, 전체 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 동일한 종류 내부의 움직임 정보의, 당해 종류의 움직임 정보 중의 추가 순서가 서로 같다는 것; 추가 가능한 동일한 종류의 움직임 정보의 결정 방식이 서로 같다는 것; 중의 하나 또는 다수의 동일 측면을 포함하며, 상기 제2 움직임 정보 후보 리스트는 하나의 전체로서의 화상 블록의 움직임 정보의 선택을 위한 것이며;
    상기 선택 유닛은, 상기 제1 움직임 정보 후보 리스트로부터, 상기 제1 화상 블록에 포함된 적어도 하나의 서브 화상 블록을 위해 움직임 정보를 각각 선택하기 위한 것이며;
    상기 인코딩 또는 디코딩 유닛은, 적어도 하나의 상기 서브 화상 블록의 움직임 정보를 토대로, 상기 제1 화상 블록에 대해 인코딩 또는 디코딩을 수행하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  126. 제125항에 있어서,
    상기 제1 움직임 정보 후보 리스트의 구축 방식과 상기 제2 움직임 정보 후보 리스트의 구축 방식은 서로 같은 것을 특징으로 하는 비디오 처리 기기.
  127. 제125항 또는 제126항에 있어서,
    추가할 움직임 정보는,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 히스토리 기반의 움직임 벡터 예측인 HMVP, 제로 움직임 벡터, 중의 적어도 하나를 포함하는 것을 특징으로 하는 비디오 처리 기기.
  128. 제127항에 있어서,
    상기 추가 가능한 움직임 정보의 추가 순서의 우선순위는 내림순으로 차례로,
    공간 도메인 상의 인접 블록의 움직임 정보, 시간 도메인 상의 인접 블록의 움직임 정보, 상기 HMVP, 인접하여 쌍을 이루는 평균 블록의 움직임 정보, 제로 움직임 벡터인 것을 특징으로 하는 비디오 처리 기기.
  129. 제125항 내지 제128항 중 어느 한 항에 있어서,
    상기 서브 화상 블록의 개수는 2개인 것을 특징으로 하는 비디오 처리 기기.
  130. 제125항 내지 제129항 중 어느 한 항에 있어서,
    적어도 하나의 상기 서브 화상 블록은 상기 제1 화상 블록에 대해 삼각형 분할을 수행하여 얻어지는 것을 특징으로 하는 비디오 처리 기기.
  131. 비디오 처리 기기에 있어서,
    프로세서와 메모리를 포함하고, 상기 메모리는 프로그램 코드를 저장하기 위한 것이며, 상기 프로세서는 상기 프로그램 코드를 호출하여, 제1항 내지 제65항 중 어느 한 항에 따른 방법을 수행하기 위한 것임을 특징으로 하는 비디오 처리 기기.
  132. 컴퓨터 판독 가능한 저장 매체에 있어서,
    상기 저장 매체는 프로그램 코드를 저장하기 위한 것이며,
    상기 프로그램 코드는 제1항 내지 제65항 중 어느 한 항에 따른 방법을 수행하기 위한 것임을 특징으로 하는 비디오 처리 기기.
KR1020217032916A 2019-03-13 2019-03-13 비디오 처리 방법 및 기기 KR20210134038A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/078055 WO2020181543A1 (zh) 2019-03-13 2019-03-13 视频处理方法和设备

Publications (1)

Publication Number Publication Date
KR20210134038A true KR20210134038A (ko) 2021-11-08

Family

ID=70999801

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217032916A KR20210134038A (ko) 2019-03-13 2019-03-13 비디오 처리 방법 및 기기

Country Status (6)

Country Link
US (1) US20210409720A1 (ko)
EP (1) EP3926956A4 (ko)
JP (1) JP2022533295A (ko)
KR (1) KR20210134038A (ko)
CN (3) CN116389769A (ko)
WO (1) WO2020181543A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020244571A1 (en) 2019-06-04 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Motion candidate list construction using neighboring block information
KR20220016075A (ko) 2019-06-04 2022-02-08 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 모션 후보 리스트 구성 프로세스의 조건부 구현
CN117354507A (zh) 2019-06-06 2024-01-05 北京字节跳动网络技术有限公司 视频编解码的运动候选列表构建
CN114128295B (zh) 2019-07-14 2024-04-12 北京字节跳动网络技术有限公司 视频编解码中几何分割模式候选列表的构建
CN114450959A (zh) 2019-09-28 2022-05-06 北京字节跳动网络技术有限公司 视频编解码中的几何分割模式
CN112004097B (zh) * 2020-07-30 2021-09-14 浙江大华技术股份有限公司 帧间预测方法、图像处理装置以及计算机可读存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10362327B2 (en) * 2011-01-14 2019-07-23 Sony Corporation B-picture syntax change for generalized bi-prediction in high efficiency video coding (HEVC)
KR20120090740A (ko) * 2011-02-07 2012-08-17 (주)휴맥스 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법
EP3879834B1 (en) * 2011-05-31 2024-05-01 JVCKENWOOD Corporation Moving image encoding device, moving image encoding method and moving image encoding program, as well as moving image decoding device, moving image decoding method and moving image decoding program
US9426463B2 (en) * 2012-02-08 2016-08-23 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
US9325991B2 (en) * 2012-04-11 2016-04-26 Qualcomm Incorporated Motion vector rounding
US9693060B2 (en) * 2012-11-16 2017-06-27 Qualcomm Incorporated Device and method for scalable coding of video information
US9491460B2 (en) * 2013-03-29 2016-11-08 Qualcomm Incorporated Bandwidth reduction for video coding prediction
CN105393540A (zh) * 2013-07-18 2016-03-09 Lg电子株式会社 用于处理视频信号的方法和设备
US10171810B2 (en) * 2015-06-22 2019-01-01 Cisco Technology, Inc. Transform coefficient coding using level-mode and run-mode
EP3357245A4 (en) * 2015-11-05 2019-03-13 MediaTek Inc. METHOD AND DEVICE OF INTERPRESSATION USING AN AVERAGE MOTION VECTOR FOR VIDEO CODING
US10368083B2 (en) * 2016-02-15 2019-07-30 Qualcomm Incorporated Picture order count based motion vector pruning
US10462462B2 (en) * 2016-09-29 2019-10-29 Qualcomm Incorporated Motion vector difference coding technique for video coding
CN111567045A (zh) * 2017-10-10 2020-08-21 韩国电子通信研究院 使用帧间预测信息的方法和装置
CN116866571A (zh) * 2017-10-20 2023-10-10 株式会社Kt 视频信号处理方法及装置

Also Published As

Publication number Publication date
WO2020181543A1 (zh) 2020-09-17
EP3926956A1 (en) 2021-12-22
CN116389769A (zh) 2023-07-04
CN111279701A (zh) 2020-06-12
CN116320484A (zh) 2023-06-23
JP2022533295A (ja) 2022-07-22
CN111279701B (zh) 2023-05-23
EP3926956A4 (en) 2022-11-09
US20210409720A1 (en) 2021-12-30

Similar Documents

Publication Publication Date Title
US11375226B2 (en) Method and apparatus of video coding with affine motion compensation
KR20210134038A (ko) 비디오 처리 방법 및 기기
US10771809B2 (en) Picture prediction method and picture prediction apparatus
US10856006B2 (en) Method and system using overlapped search space for bi-predictive motion vector refinement
WO2017148345A1 (en) Method and apparatus of video coding with affine motion compensation
TW201739252A (zh) 具有仿射運動補償的視訊編碼的方法以及裝置
US9473787B2 (en) Video coding apparatus and video coding method
CN113170192B (zh) 仿射的merge与mvd
CN110944204B (zh) 简化的空时运动矢量预测
US20220053206A1 (en) Video signal processing method and apparatus using adaptive motion vector resolution
CN110337810B (zh) 用于视频处理的方法和设备
CN112154666A (zh) 视频编解码方法和装置
CN111670578B (zh) 一种视频编码或解码方法、装置、设备及存储介质
TW202038625A (zh) 視訊編碼系統中用於決定儲存用運動向量的視訊處理方法和裝置
CN111713109B (zh) 视频处理方法、装置和设备
JP6849781B2 (ja) 画像符号化装置、画像符号化方法及びコンピュータプログラム
US20240187638A1 (en) Picture prediction method and picture prediction apparatus
KR102513585B1 (ko) 비디오 처리 시스템에서 인터 예측 방법 및 장치
CN111699689B (zh) 视频处理方法、装置和设备
KR102668262B1 (ko) Cnn 기반의 영상 부호화 또는 복호화 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination