KR20170045264A - 이미지 예측 방법 및 관련 장치 - Google Patents

이미지 예측 방법 및 관련 장치 Download PDF

Info

Publication number
KR20170045264A
KR20170045264A KR1020177007312A KR20177007312A KR20170045264A KR 20170045264 A KR20170045264 A KR 20170045264A KR 1020177007312 A KR1020177007312 A KR 1020177007312A KR 20177007312 A KR20177007312 A KR 20177007312A KR 20170045264 A KR20170045264 A KR 20170045264A
Authority
KR
South Korea
Prior art keywords
motion information
pixel
picture block
information unit
candidate
Prior art date
Application number
KR1020177007312A
Other languages
English (en)
Other versions
KR102013771B1 (ko
Inventor
환방 천
쓰신 린
판 량
Original Assignee
후아웨이 테크놀러지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 후아웨이 테크놀러지 컴퍼니 리미티드 filed Critical 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20170045264A publication Critical patent/KR20170045264A/ko
Application granted granted Critical
Publication of KR102013771B1 publication Critical patent/KR102013771B1/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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/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/182Methods 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 a pixel
    • 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/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • 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/567Motion estimation based on rate distortion criteria
    • 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/172Methods 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 picture, frame or field

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

이미지 예측 방법 및 관련 장치이며, 본 방법은 이미지 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계 - 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함함 -; K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계 - 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트 내의 움직임 정보 단위들의 적어도 일부로부터 선택됨 -; 및 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽셀 값을 예측하는 단계를 포함한다. 본 발명은 비평행이동 움직임 모델에 기초한 이미지 예측의 계산 복잡도를 감소시키는 것을 용이하게 한다.

Description

이미지 예측 방법 및 관련 장치{IMAGE PREDICTION METHOD AND RELATED DEVICE}
본 출원은 2014년 10월 27일에 중국 특허청에 출원된, 발명의 명칭이 "PICTURE PREDICTION METHOD AND RELATED APPARATUS"인 중국 특허 출원 제201410584175.1호 - 그 전체가 참고로 본원에 포함됨 - 를 우선권 주장한다.
본 발명은 픽처 처리 기술 분야에 관한 것이며, 상세하게는, 픽처 예측 방법 및 관련 장치에 관한 것이다.
광전 획득(photoelectric acquisition) 기술들의 발전과 고선명 디지털 비디오에 대한 요구사항들의 계속적인 증가에 따라, 비디오 데이터의 양이 점점 더 커지고 있다. 제한된 이종 전송 대역폭(heterogeneous transmission bandwidth) 및 다양한 비디오 응용분야로 인해, 보다 높은 요구사항들이 비디오 코딩 효율에 계속 부과되고 있다. 요구사항들에 따라 고효율 비디오 코딩(high efficient video coding, 줄여서 HEVC라고 함) 표준을 개발하는 작업이 개시되었다.
비디오 압축 코딩의 기본 원리는 중복성을 가능한 한 많이 제거하기 위해 공간 영역, 시간 영역, 및 코드 워드 간의 상관을 사용하는 것이다. 현재, 일반적인 관례는 예측(인트라 프레임 예측(intra-frame prediction) 및 인터 프레임 예측(inter-frame prediction)을 포함함), 변환, 양자화, 엔트로피 코딩 등의 단계들을 수행하는 것에 의해 비디오 압축 코딩을 구현하기 위해 블록 기반 하이브리드 비디오 코딩 프레임워크를 사용하는 것이다. 이 코딩 프레임워크는 높은 생존가능성을 보여주고 있으며, 따라서 HEVC는 이 블록 기반 하이브리드 비디오 코딩 프레임워크를 여전히 사용한다.
다양한 비디오 코딩/디코딩 해결책들에서, 움직임 추정 또는 움직임 보상이 코딩/디코딩 효율에 영향을 미치는 핵심 기술이다. 다양한 종래의 비디오 코딩/디코딩 해결책들에서는, 물체의 움직임이 평행이동 움직임(translational motion)을 항상 충족시키고 물체 전체의 모든 부분의 움직임이 동일한 것으로 가정된다. 기본적으로, 종래의 움직임 추정 또는 움직임 보상 알고리즘들 모두는 평행이동 모델(translational motion model)에 기초하여 구축된 블록 움직임 보상 알고리즘들이다. 그렇지만, 현실 세계에서의 움직임은 다양하고, 스케일링 업/다운, 회전, 또는 포물선 움직임과 같은 불규칙 움직임이 도처에 존재한다. 지난 세기의 90년대 이후에, 비디오 코딩 전문가들은 불규칙 움직임의 보편성을 인식하였고, 비디오 코딩 효율을 개선시키기 위해 불규칙 움직임 모델(아핀 움직임 모델(affine motion model), 회전 움직임 모델(rotational motion model), 또는 스케일링 움직임 모델(scaling motion model)과 같은 비평행이동 움직임 모델(non-translational motion model))을 도입하고자 하였다. 그렇지만, 비평행이동 움직임 모델에 기초하여 수행되는 종래의 픽처 예측의 계산 복잡도가 일반적으로 아주 높다.
본 발명의 실시예들은, 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키기 위해, 픽처 예측 방법 및 관련 장치를 제공한다.
본 발명의 제1 양태는 픽처 예측 방법을 제공하고, 본 방법은
픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계 - 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K1은 2 이상인 정수임 -;
K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트(merged motion information unit set) i를 결정하는 단계 -
병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택되고, 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함함 -; 및
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계를 포함한다.
제1 양태를 참조하여, 제1 양태의 제1 실시가능 구현 방식에서, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계는,
N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계 - N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합(constraint-compliant) 움직임 정보 단위들의 적어도 일부로부터 선택되고, N은 양의 정수이며, N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함함 - 를 포함한다.
제1 양태의 제1 실시가능 구현 방식을 참조하여, 제1 양태의 제2 실시가능 구현 방식에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시키고, 여기서
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함하고;
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함하며;
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함하고;
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함하며;
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다.
제1 양태 또는 제1 양태의 제1 실시가능 구현 방식 또는 제1 양태의 제2 실시가능 구현 방식을 참조하여, 제1 양태의 제3 실시가능 구현 방식에서, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1에 있는 적어도 2개의 픽셀 샘플들을 포함하고, 여기서
픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이며; 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 중앙 픽셀 샘플 a1은 픽처 블록 x의 중앙 픽셀이거나, 픽처 블록 x의 중앙 픽셀을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
제1 양태의 제3 실시가능 구현 방식을 참조하여, 제1 양태의 제4 실시가능 구현 방식에서,
픽처 블록 x의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x1은 양의 정수이고, 여기서
x1 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
제1 양태의 제3 실시가능 구현 방식 또는 제1 양태의 제4 실시가능 구현 방식을 참조하여, 제1 양태의 제5 실시가능 구현 방식에서,
픽처 블록 x의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x2 개의 픽셀 샘플들은 픽처 블록 x의 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x2는 양의 정수이고, 여기서
x2 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 우측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
제1 양태의 제3 실시가능 구현 방식 또는 제1 양태의 제4 실시가능 구현 방식 또는 제1 양태의 제5 실시가능 구현 방식을 참조하여, 제1 양태의 제6 실시가능 구현 방식에서, 픽처 블록 x의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x3 개의 픽셀 샘플들은 픽처 블록 x의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x3은 양의 정수이고, 여기서
x3 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
제1 양태의 제3 실시가능 구현 방식 또는 제1 양태의 제4 실시가능 구현 방식 또는 제1 양태의 제5 실시가능 구현 방식 또는 제1 양태의 제6 실시가능 구현 방식을 참조하여, 제1 양태의 제7 실시가능 구현 방식에서,
픽처 블록 x의 중앙 픽셀 샘플 a1에 대응하는 후보 움직임 정보 단위 세트는 x5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a2이고, 여기서
픽처 블록 x가 속해 있는 비디오 프레임에서의 중앙 픽셀 샘플 a1의 위치는 픽처 블록 x가 속해 있는 비디오 프레임에 인접한 비디오 프레임에서의 픽셀 샘플 a2의 위치와 동일하며, x5는 양의 정수이다.
제1 양태 또는 제1 양태의 제1 실시가능 구현 방식 내지 제1 양태의 제7 실시가능 구현 방식 중 어느 하나를 참조하여, 제1 양태의 제8 실시가능 구현 방식에서,
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계는, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계 - 제1 예측 방향은 순방향 또는 역방향임 -를 포함하거나;
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계는,
예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계를 포함한다.
제1 양태 또는 제1 양태의 제1 실시가능 구현 방식 내지 제1 양태의 제8 실시가능 구현 방식 중 어느 하나를 참조하여, 제1 양태의 제9 실시가능 구현 방식에서,
본 방법은
픽처 블록 y 내의 K2 개의 픽셀 샘플들을 결정하고, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계 - K2는 1 초과인 정수이고, 픽처 블록 y는 픽처 블록 x에 공간적으로 인접함 -;
K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계 -
K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K2 개의 픽셀 샘플들 내의 픽셀 샘플 z1에 대응하는 후보 움직임 정보 단위 세트는 움직임 정보 단위 a2를 포함하며, 움직임 정보 단위 a2는 픽셀 샘플 z2의 움직임 정보 단위에 기초하여 획득되고, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 문턱값 미만이거나, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 가장 짧으며; 병합 움직임 정보 단위 세트 j 내의 K2 개의 움직임 정보 단위들은 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 각각 선택됨 -; 및
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계를 추가로 포함한다.
제1 양태 또는 제1 양태의 제1 실시가능 구현 방식 내지 제1 양태의 제9 실시가능 구현 방식 중 어느 하나를 참조하여, 제1 양태의 제10 실시가능 구현 방식에서,
비평행이동 움직임 모델은 아핀 움직임 모델, 포물선 움직임 모델(parabolic motion model), 회전 움직임 모델, 원근 움직임 모델(perspective motion model), 전단 움직임 모델(shearing motion model), 스케일링 움직임 모델, 또는 이중선형 움직임 모델(bilinear motion model) 중 임의의 것이다.
제1 양태 또는 제1 양태의 제1 실시가능 구현 방식 내지 제1 양태의 제10 실시가능 구현 방식 중 어느 하나를 참조하여, 제1 양태의 제11 실시가능 구현 방식에서,
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계는,
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀의 예측된 픽셀 값을 결정하는 단계; 또는
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하는 단계를 포함한다.
제1 양태 또는 제1 양태의 제1 실시가능 구현 방식 내지 제1 양태의 제11 실시가능 구현 방식 중 어느 하나를 참조하여, 제1 양태의 제12 실시가능 구현 방식에서,
픽처 예측 방법이 비디오 코딩 프로세스에 적용되거나, 픽처 예측 방법이 비디오 디코딩 프로세스에 적용된다.
제1 양태의 제12 실시가능 구현 방식을 참조하여, 제1 양태의 제13 실시가능 구현 방식에서, 픽처 예측 방법이 비디오 디코딩 프로세스에 적용될 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계를 포함한다.
제1 양태의 제12 실시가능 구현 방식을 참조하여, 제1 양태의 제14 실시가능 구현 방식에서, 픽처 예측 방법이 비디오 코딩 프로세스에 적용될 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡(distortion) 또는 레이트 왜곡 비용(rate distortion cost)에 따라, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계를 포함한다.
제1 양태의 제12 실시가능 구현 방식 또는 제1 양태의 제14 실시가능 구현 방식을 참조하여, 제1 양태의 제15 실시가능 구현 방식에서, 픽처 예측 방법이 비디오 코딩 프로세스에 적용될 때, 본 방법은 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하는 단계를 추가로 포함한다.
본 발명의 제2 양태는 픽처 예측 장치를 제공하고, 본 장치는
픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하도록 - 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K1은 2 이상인 정수임 - 구성된 제1 결정 유닛;
K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 구성된 제2 결정 유닛 - 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택되고, 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함함 -; 및
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 구성된 예측 유닛을 포함한다.
제2 양태를 참조하여, 제2 양태의 제1 실시가능 구현 방식에서,
제2 결정 유닛은, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 - N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택되고, N은 양의 정수이며, N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함함 - 특정 방식으로 구성된다.
제2 양태의 제1 실시가능 구현 방식을 참조하여, 제2 양태의 제2 실시가능 구현 방식에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시키고, 여기서
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함하고;
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함하며;
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함하고;
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함하며;
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다.
제2 양태 또는 제2 양태의 제1 실시가능 구현 방식 또는 제2 양태의 제2 실시가능 구현 방식을 참조하여, 제2 양태의 제3 실시가능 구현 방식에서, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1에 있는 적어도 2개의 픽셀 샘플들을 포함하고, 여기서
픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이며; 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 중앙 픽셀 샘플 a1은 픽처 블록 x의 중앙 픽셀이거나, 픽처 블록 x의 중앙 픽셀을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
제2 양태의 제3 실시가능 구현 방식을 참조하여, 제2 양태의 제4 실시가능 구현 방식에서,
픽처 블록 x의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x1은 양의 정수이고, 여기서
x1 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
제2 양태의 제3 실시가능 구현 방식 또는 제2 양태의 제4 실시가능 구현 방식을 참조하여, 제2 양태의 제5 실시가능 구현 방식에서,
픽처 블록 x의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x2 개의 픽셀 샘플들은 픽처 블록 x의 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x2는 양의 정수이고, 여기서
x2 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 우측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
제2 양태의 제3 실시가능 구현 방식 또는 제2 양태의 제4 실시가능 구현 방식 또는 제2 양태의 제5 실시가능 구현 방식을 참조하여, 제2 양태의 제6 실시가능 구현 방식에서, 픽처 블록 x의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x3 개의 픽셀 샘플들은 픽처 블록 x의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x3은 양의 정수이고, 여기서
x3 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
제2 양태의 제3 실시가능 구현 방식 또는 제2 양태의 제4 실시가능 구현 방식 또는 제2 양태의 제5 실시가능 구현 방식 또는 제2 양태의 제6 실시가능 구현 방식을 참조하여, 제2 양태의 제7 실시가능 구현 방식에서,
픽처 블록 x의 중앙 픽셀 샘플 a1에 대응하는 후보 움직임 정보 단위 세트는 x5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a2이고, 여기서
픽처 블록 x가 속해 있는 비디오 프레임에서의 중앙 픽셀 샘플 a1의 위치는 픽처 블록 x가 속해 있는 비디오 프레임에 인접한 비디오 프레임에서의 픽셀 샘플 a2의 위치와 동일하며, x5는 양의 정수이다.
제2 양태의 제3 실시가능 구현 방식 또는 제2 양태의 제4 실시가능 구현 방식 또는 제2 양태의 제5 실시가능 구현 방식 또는 제2 양태의 제6 실시가능 구현 방식 또는 제2 양태의 제7 실시가능 구현 방식을 참조하여, 제2 양태의 제8 실시가능 구현 방식에서, 예측 유닛은, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 - 제1 예측 방향은 순방향 또는 역방향임 - 특정 방식으로 구성되거나;
예측 유닛은, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 특정 방식으로 구성된다.
제2 양태 또는 제2 양태의 제1 실시가능 구현 방식 내지 제2 양태의 제8 실시가능 구현 방식 중 어느 하나를 참조하여, 제2 양태의 제9 실시가능 구현 방식에서, 예측 유닛은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 특정 방식으로 구성되거나;
예측 유닛은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 특정 방식으로 구성된다.
제2 양태 또는 제2 양태의 제1 실시가능 구현 방식 내지 제2 양태의 제9 실시가능 구현 방식 중 어느 하나를 참조하여, 제2 양태의 제10 실시가능 구현 방식에서,
제1 결정 유닛은 픽처 블록 y 내의 K2 개의 픽셀 샘플들을 결정하고, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하도록 - K2는 1 초과인 정수이고, 픽처 블록 y는 픽처 블록 x에 공간적으로 인접하며, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함함 - 추가로 구성되고;
제2 결정 유닛은 K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하도록 - K2 개의 픽셀 샘플들 내의 픽셀 샘플 z1에 대응하는 후보 움직임 정보 단위 세트는 움직임 정보 단위 a2를 포함하며, 움직임 정보 단위 a2는 픽셀 샘플 z2의 움직임 정보 단위에 기초하여 획득되고, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 문턱값 미만이거나, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 가장 짧으며; 병합 움직임 정보 단위 세트 j 내의 K2 개의 움직임 정보 단위들은 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 각각 선택됨 - 추가로 구성되며;
예측 유닛은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하도록 추가로 구성된다.
제2 양태 또는 제2 양태의 제1 실시가능 구현 방식 내지 제2 양태의 제10 실시가능 구현 방식 중 어느 하나를 참조하여, 제2 양태의 제11 실시가능 구현 방식에서,
비평행이동 움직임 모델은 아핀 움직임 모델, 포물선 움직임 모델, 회전 움직임 모델, 원근 움직임 모델, 전단 움직임 모델, 스케일링 움직임 모델, 또는 이중선형 움직임 모델 중 임의의 것이다.
제2 양태 또는 제2 양태의 제1 실시가능 구현 방식 내지 제2 양태의 제11 실시가능 구현 방식 중 어느 하나를 참조하여, 제2 양태의 제12 실시가능 구현 방식에서, 픽처 예측 장치가 비디오 코딩 장치에 적용되거나, 픽처 예측 장치가 비디오 디코딩 장치에 적용된다.
제2 양태의 제12 실시가능 구현 방식을 참조하여, 제2 양태의 제13 실시가능 구현 방식에서, 픽처 예측 장치가 비디오 코딩 장치에 적용될 때, 제2 결정 유닛은, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 따라, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 특정 방식으로 구성된다.
제2 양태의 제12 실시가능 구현 방식 또는 제2 양태의 제13 실시가능 구현 방식을 참조하여, 제2 양태의 제14 실시가능 구현 방식에서, 픽처 예측 장치가 비디오 코딩 장치에 적용될 때, 예측 유닛은 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하도록 추가로 구성된다.
제2 양태의 제12 실시가능 구현 방식을 참조하여, 제2 양태의 제15 실시가능 구현 방식에서, 픽처 예측 장치가 비디오 디코딩 장치에 적용될 때, 제2 결정 유닛은, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 특정 방식으로 구성된다.
본 발명의 실시예들의 일부 기술적 해결책들에서, 픽처 블록 x의 픽셀 값이 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 예측되고, 여기서 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위가 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다는 것을 알 수 있다. 병합 움직임 정보 단위 세트 i의 선택 범위가 비교적 작기 때문에, K1 개의 픽셀 샘플들의 모든 가능한 후보 움직임 정보 단위 세트들에서 엄청난 양의 계산을 수행하는 것만으로 K1 개의 픽셀 샘플들의 움직임 정보 단위들을 선별하기 위해 종래의 기술에서 사용되는 메커니즘이 포기된다. 이것은 코딩 효율을 개선시키는 데 도움을 주고, 또한 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키는 데도 도움을 주며, 게다가 비평행이동 움직임 모델을 비디오 코딩 표준에 도입하는 것을 가능하게 하고, 비평행이동 움직임 모델이 도입되기 때문에, 물체의 움직임을 보다 정확하게 기술하는 데 도움을 주고, 따라서 예측 정확도를 개선시키는 데 도움을 준다.
본 발명의 실시예들에서의 또는 종래 기술에서의 기술적 해결책들을 보다 명확하게 설명하기 위해, 이하에서는 실시예들 또는 종래 기술을 설명하는 데 필요한 첨부 도면들을 간략히 설명한다. 이하의 설명에서의 첨부 도면들이 본 발명의 단지 일부 실시예들을 나타내고, 본 기술 분야의 통상의 기술자가 창조적 노력 없이 이 첨부 도면들로부터 다른 도면들을 여전히 도출할 수 있다는 것은 분명하다.
도 1-a는 본 발명의 일 실시예에 따른 인트라 프레임 예측에 대응하는 예측 단위 파티션 모드(prediction unit partition mode)의 개략도;
도 1-b는 본 발명의 일 실시예에 따른 인터 프레임 예측에 대응하는 몇 개의 예측 단위 파티션 모드들의 개략도;
도 1-c는 본 발명의 일 실시예에 따른 픽처 예측 방법의 개략 플로우차트;
도 2-a는 본 발명의 일 실시예에 따른 다른 픽처 예측 방법의 개략 플로우차트;
도 2-b 내지 도 2-d는 본 발명의 일 실시예에 따른 픽셀 샘플들의 후보 움직임 정보 단위 세트들을 결정하는 몇 가지 방법들의 개략도;
도 2-e는 본 발명의 일 실시예에 따른 픽처 블록 x의 정점 좌표들의 개략도;
도 2-f 및 도 2-g는 본 발명의 일 실시예에 따른 픽셀의 아핀 움직임의 개략도;
도 2-h는 본 발명의 일 실시예에 따른 이중선형 보간의 개략도;
도 2-i는 본 발명의 일 실시예에 따른 움직임 벡터의 저장의 개략도;
도 3은 본 발명의 일 실시예에 따른 다른 비디오 코딩 방법의 개략 플로우차트;
도 4는 본 발명의 일 실시예에 따른 다른 비디오 디코딩 방법의 개략 플로우차트;
도 5는 본 발명의 일 실시예에 따른 픽처 예측 장치의 개략도;
도 6은 본 발명의 일 실시예에 따른 다른 픽처 예측 장치의 개략도;
도 7은 본 발명의 일 실시예에 따른 다른 픽처 예측 장치의 개략도.
본 발명의 실시예들은, 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키기 위해, 픽처 예측 방법 및 관련 장치를 제공한다.
본 기술 분야의 통상의 기술자가 본 발명에서의 기술적 해결책들을 더 잘 이해하도록 하기 위해, 이하에서는 본 발명의 실시예들에서의 기술적 해결책들을 본 발명의 실시예들에서의 첨부 도면들을 참조하여 명확하게 그리고 철저히 기술한다. 기술된 실시예들이 본 발명의 실시예들의 전부가 아니라 일부에 불과하다는 것은 분명하다. 창조적 노력 없이 본 발명의 실시예들에 기초하여 본 기술 분야의 통상의 기술자에 의해 획득되는 다른 실시예들 모두는 본 발명의 보호 범위 내에 속한다.
실시예들이 이후부터 개별적으로 상세히 기술된다.
본 발명의 명세서, 청구항들, 및 첨부 도면들에서, 용어들 "제1", "제2", "제3", "제4" 등은 상이한 물체들을 구분하려는 것이며, 특정의 순서를 나타내지 않는다. 그에 부가하여, 용어들 "포함하는", "가지는", 또는 이들의 임의의 다른 변형은 비배타적 포함(non-exclusive inclusion)을 포괄하려는 것이다. 예를 들어, 일련의 단계들 또는 유닛들을 포함하는 프로세스, 방법, 시스템, 제품, 또는 디바이스는 열거된 단계들 또는 유닛들로 제한되지 않고, 열거되지 않은 단계 또는 유닛을 임의로 추가로 포함하거나 프로세스, 방법, 제품, 또는 디바이스의 다른 내재된 단계 또는 유닛을 임의로 추가로 포함한다.
이하에서는 먼저 본 발명의 실시예들에 관련될 수 있는 일부 개념들을 설명한다.
대부분의 코딩 프레임워크들에서, 비디오 시퀀스는 일련의 픽처(picture)들을 포함하고, 픽처들은 슬라이스(slice)들로 추가로 분할되며, 슬라이스들은 블록(block)들로 추가로 분할된다. 비디오 코딩은 블록을 단위로서 사용하여 픽처의 좌측 상부 코너 위치부터 시작하여 행별로 좌에서 우로 그리고 위에서 아래로 코딩 처리를 수행하는 것이다. 어떤 새로운 비디오 코딩 표준들에서, 블록의 개념이 더 확장된다. 매크로블록(macroblock, 줄여서 MB라고 함)이 H.264 표준에서 정의되고, MB는 예측 코딩을 위해 사용될 수 있는 다수의 예측 블록(파티션(partition))들로 추가로 분할될 수 있다. HEVC 표준에서, 코딩 단위(coding unit, 줄여서 CU라고 함), 예측 단위(prediction unit, 줄여서 PU라고 함), 및 변환 단위(transform unit, 줄여서 TU라고 함)와 같은 기본 개념들이 사용되고, 다수의 단위들이 기능들에 따라 분류되며, 완전히 새로운 트리 기반 구조가 설명을 위해 사용된다. 예를 들어, CU는 쿼드트리(quadtree)에 따라 보다 작은 CU들로 분할될 수 있고, 보다 작은 CU들은 쿼드트리 구조를 형성하기 위해 추가로 분할될 수 있다. PU와 TU도 유사한 트리 구조를 갖는다. 단위가 CU, PU, 또는 TU인지에 관계없이, 단위는 본질적으로 블록의 개념에 속한다. CU는 매크로블록(MB) 또는 코딩 블록과 유사하고, 코딩 픽처를 파티셔닝 및 코딩하기 위한 기본 단위이다. PU는 예측 블록에 대응할 수 있고, 예측 코딩을 위한 기본 단위이다. CU는 파티션 모드에 따라 다수의 PU들로 추가로 분할된다. TU는 변환 블록에 대응할 수 있고, 예측 잔차를 변환하기 위한 기본 단위이다. 고효율 비디오 코딩(high efficiency video coding, 줄여서 HEVC라고 함) 표준에서, 그들은 일괄하여 코딩 트리 블록(coding tree block, 줄여서 CTB라고 함) 등이라고 지칭될 수 있다.
HEVC 표준에서, 코딩 단위의 크기는 64x64, 32x32, 16x16, 및 8x8의 4개의 레벨들을 포함할 수 있다. 각각의 레벨에서의 코딩 단위들은 인트라 프레임 예측 및 인터 프레임 예측에 따라 상이한 크기들의 예측 단위들로 추가로 분할될 수 있다. 예를 들어, 도 1-a 및 도 1-b에 도시된 바와 같이, 도 1-a는 인트라 프레임 예측에 대응하는 예측 단위 파티션 모드를 나타내고 있다. 도 1-b는 인터 프레임 예측에 대응하는 몇 개의 예측 단위 파티션 모드들을 나타내고 있다.
비디오 코딩 기술의 발전 및 진화 과정에서, 비디오 코딩 전문가들은 코딩 효율을 개선시키려고 시도하기 위해 인접한 코딩/디코딩 블록들 사이의 시간적 및 공간적 상관을 사용하는 다양한 방법들을 생각해낸다. H264 또는 고도 비디오 코딩(advanced video coding, 줄여서 AVC라고 함) 표준에서, 스킵 모드(skip mode)와 직접 모드(direct mode)는 코딩 효율을 개선시키기 위한 효과적인 도구들이 된다. 비트 레이트가 낮을 때 사용되는 2개의 코딩 모드들의 블록들은 코딩 시퀀스 전체의 1/2 초과를 차지할 수 있다. 스킵 모드가 사용될 때, 현재 픽처 블록의 움직임 벡터는 스킵 모드 플래그를 비트 스트림에 추가하는 것만으로 인접한 움직임 벡터들을 사용하여 도출될 수 있고, 참조 블록의 값이 움직임 벡터에 따라 현재 픽처 블록의 재구성된 값으로서 직접 복사된다. 그에 부가하여, 직접 모드가 사용될 때, 인코더는 인접한 움직임 벡터들을 사용하여 현재 픽처 블록의 움직임 벡터를 도출하고, 참조 블록의 값을 움직임 벡터에 따라 현재 픽처 블록의 예측된 값으로서 직접 복사하며, 인코더에서 예측된 값을 사용하여 현재 픽처 블록에 대해 예측 코딩을 수행할 수 있다. 진화된 고효율 비디오 코딩(high efficiency video coding, 줄여서 HEVC라고 함) 표준에서, 비디오 코딩 효율을 추가로 개선시키기 위해 어떤 새로운 코딩 도구들이 도입된다. 병합 코딩(병합) 모드 및 적응적 움직임 벡터 예측(advanced motion vector prediction, 줄여서 AMVP라고 함) 모드가 2개의 중요한 인터 프레임 예측 도구들이다. 병합 코딩(병합)에서, 현재 코딩 블록 근방에 있는 코딩된 블록들의 움직임 정보(움직임 벡터(motion vector, 줄여서 MV라고 함), 예측 방향, 참조 프레임 인덱스 등을 포함함)가 후보 움직임 정보 세트를 구성하는 데 사용되고; 비교를 통해, 가장 높은 코딩 효율을 갖는 후보 움직임 정보가 현재 코딩 블록의 움직임 정보로서 선택될 수 있고, 현재 코딩 블록의 예측된 값이 참조 프레임으로부터 구해지며, 현재 코딩 블록에 대해 예측 코딩이 수행되고; 그와 동시에, 움직임 정보가 어느 인접한 코딩된 블록으로부터 선택되는지를 표시하는 인덱스 값이 비트 스트림에 기입된다. 적응적 움직임 벡터 예측 모드가 사용될 때, 인접한 코딩된 블록의 움직임 벡터가 현재 코딩 블록의 움직임 벡터의 예측된 값으로서 사용된다. 가장 높은 코딩 효율을 갖는 움직임 벡터가 선택되고 현재 코딩 블록의 움직임 벡터를 예측하는 데 사용될 수 있으며, 어느 인접한 움직임 벡터가 선택되는지를 표시하는 인덱스 값이 비디오 비트 스트림에 기입될 수 있다.
이하에서는 본 발명의 실시예들의 기술적 해결책들을 계속하여 논의한다.
이하에서는 먼저 본 발명의 일 실시예에 의해 제공되는 픽처 예측 방법을 설명한다. 본 발명의 이 실시예에 의해 제공되는 픽처 예측 방법은 비디오 코딩 장치 또는 비디오 디코딩 장치에 의해 수행된다. 비디오 코딩 장치 또는 비디오 디코딩 장치는 비디오를 출력하거나 저장할 필요가 있는 임의의 장치, 예를 들어, 노트북 컴퓨터, 태블릿 컴퓨터, 개인용 컴퓨터, 휴대폰, 또는 비디오 서버와 같은 디바이스일 수 있다.
본 발명에 따른 픽처 예측 방법의 일 실시예에서, 픽처 예측 방법은 픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계 - K1은 2 이상인 정수이고, 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함함 -; K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계 - 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택되고, 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함함 -; 및 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계를 포함한다.
도 1-c를 참조하면, 도 1-c는 본 발명의 일 실시예에 따른 픽처 예측 방법의 개략 플로우차트이다. 도 1-c에 도시된 바와 같이, 본 발명의 일 실시예에 의해 제공되는 픽처 예측 방법은 하기의 단계들을 포함할 수 있다:
101. 픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계.
각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함한다.
K1은 1 초과인 정수이다. 예를 들어, K는 2, 3, 4, 또는 다른 값일 수 있다.
K1 개의 픽셀 샘플들이 다양한 방식들로 선택될 수 있다.
본 발명의 각각의 실시예에서 언급되는 픽셀 샘플은 픽셀 또는 적어도 2개의 픽셀들을 포함하는 픽셀 블록일 수 있다.
본 발명의 각각의 실시예에서 언급되는 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함할 수 있다. 즉, 하나의 움직임 정보 단위는 하나의 움직임 벡터를 포함할 수 있거나, 상이한 예측 방향들을 갖는 2개의 움직임 벡터들을 포함할 수 있다.
움직임 정보 단위에 대응하는 예측 방향이 순방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 역방향이면, 이는 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 단방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않는다는 것을 나타내거나, 이는 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 양방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함한다는 것을 나타낸다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1에 있는 적어도 2개의 픽셀 샘플들을 포함한다. 픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이며; 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 중앙 픽셀 샘플 a1은 픽처 블록 x의 중앙 픽셀이거나, 픽처 블록 x의 중앙 픽셀을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
픽셀 샘플이 픽셀 블록이면, 픽셀 블록의 크기는, 예를 들어, 2*2, 1*2, 4*2, 4*4, 또는 다른 크기이다.
102. K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계.
병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다. 즉, 병합 움직임 정보 단위 세트 i 내의 임의의 2개의 움직임 정보 단위들은 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다.
예를 들어, K1이 3인 것으로 가정되고, 여기서 K1 개의 픽셀 샘플들은 픽셀 샘플 001, 픽셀 샘플 002, 및 픽셀 샘플 003을 포함한다. 픽셀 샘플 001에 대응하는 후보 움직임 정보 단위 세트는 후보 움직임 정보 단위 세트 011이다. 픽셀 샘플 002에 대응하는 후보 움직임 정보 단위 세트는 후보 움직임 정보 단위 세트 022이다. 픽셀 샘플 003에 대응하는 후보 움직임 정보 단위 세트는 후보 움직임 정보 단위 세트 033이다. 병합 움직임 정보 단위 세트 i는 움직임 정보 단위 C01, 움직임 정보 단위 C02, 및 움직임 정보 단위 C03을 포함한다. 움직임 정보 단위 C01은 후보 움직임 정보 단위 세트 011로부터 선택될 수 있고, 움직임 정보 단위 C02는 후보 움직임 정보 단위 세트 022로부터 선택될 수 있으며, 움직임 정보 단위 C03은 후보 움직임 정보 단위 세트 033로부터 선택될 수 있다. 즉, 움직임 정보 단위 C01, 움직임 정보 단위 C02, 및 움직임 정보 단위 C03에서의 임의의 2개의 움직임 정보 단위들은 후보 움직임 정보 단위 세트 011, 후보 움직임 정보 단위 세트 022, 및 후보 움직임 정보 단위 세트 033에서의 상이한 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다. K1이 다른 값들인 시나리오들이 동일한 방식으로 추론된다.
병합 움직임 정보 단위 세트 i가 움직임 정보 단위 C01, 움직임 정보 단위 C02, 및 움직임 정보 단위 C03을 포함한다 - 움직임 정보 단위 C01, 움직임 정보 단위 C02, 및 움직임 정보 단위 C03에서의 임의의 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함할 수 있음 - 고 가정하면, 병합 움직임 정보 단위 세트 i는 3개의 움직임 벡터들을 포함할 수 있거나(3개의 움직임 벡터들에 대응하는 예측 모드들은 순방향 또는 역방향일 수 있거나, 3개의 움직임 벡터들은 예측 방향들이 순방향인 2개의 움직임 벡터들과 예측 방향이 역방향인 하나의 움직임 벡터를 포함할 수 있거나, 예측 방향들이 순방향인 2개의 움직임 벡터들과 예측 방향이 역방향인 하나의 움직임 벡터를 포함할 수 있음); 4개의 움직임 벡터들을 포함할 수 있거나(4개의 움직임 벡터들은 예측 방향들이 순방향인 2개의 움직임 벡터들과 예측 방향들이 역방향인 2개의 움직임 벡터들을 포함할 수 있거나, 예측 방향이 순방향인 하나의 움직임 벡터와 예측 방향들이 역방향인 3개의 움직임 벡터들을 포함할 수 있거나, 예측 방향들이 순방향인 3개의 움직임 벡터들과 예측 방향이 역방향인 하나의 움직임 벡터를 포함할 수 있음); 5개의 움직임 벡터들을 포함할 수 있거나(5개의 움직임 벡터들은 예측 방향들이 순방향인 2개의 움직임 벡터들과 예측 방향들이 역방향인 3개의 움직임 벡터들을 포함할 수 있거나, 예측 방향들이 순방향인 3개의 움직임 벡터들과 예측 방향들이 역방향인 2개의 움직임 벡터들을 포함할 수 있음); 6개의 움직임 벡터들을 포함할 수 있다(6개의 움직임 벡터들은 예측 방향들이 순방향인 3개의 움직임 벡터들과 예측 방향들이 역방향인 3개의 움직임 벡터들을 포함함)는 것이 이해될 수 있다.
103. 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계.
픽처 블록 x는 현재 픽처 블록으로서 간주될 수 있고, 현재 픽처 블록은 현재 코딩 블록 또는 현재 디코딩 블록일 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델은 아핀 움직임 모델, 포물선 움직임 모델, 회전 움직임 모델, 원근 움직임 모델, 전단 움직임 모델, 스케일링 움직임 모델, 또는 이중선형 움직임 모델 중 임의의 것이다. 비평행이동 움직임 모델이 또한 전술한 특정 예로 제한되지 않는다는 것이 이해될 수 있다.
이 실시예의 기술적 해결책에서, 픽처 블록 x의 픽셀 값이 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 예측되고, 여기서 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위가 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다는 것을 알 수 있다. 병합 움직임 정보 단위 세트 i의 선택 범위가 비교적 작기 때문에, K1 개의 픽셀 샘플들의 모든 가능한 후보 움직임 정보 단위 세트들에서 엄청난 양의 계산을 수행하는 것만으로 K1 개의 픽셀 샘플들의 움직임 정보 단위들을 선별하기 위해 종래의 기술에서 사용되는 메커니즘이 포기된다. 이것은 코딩 효율을 개선시키는 데 도움을 주고, 또한 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키는 데도 도움을 주며, 게다가 비평행이동 움직임 모델을 비디오 코딩 표준에 도입하는 것을 가능하게 하고, 비평행이동 움직임 모델이 도입되기 때문에, 물체의 움직임을 보다 정확하게 기술하는 데 도움을 주고, 따라서 예측 정확도를 개선시키는 데 도움을 준다.
이 실시예에 의해 제공되는 픽처 예측 방법은 비디오 코딩 프로세스에 적용될 수 있거나, 비디오 디코딩 프로세스에 적용될 수 있다.
실제 적용에서, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i는 다양한 방식들로 결정될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계 - N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택되고, N은 양의 정수이며, N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함함 - 를 포함할 수 있다.
2개의 후보 병합 움직임 정보 단위 세트들이 상이하다는 것은 후보 병합 움직임 정보 단위 세트들에 포함된 움직임 정보 단위들이 완전히 동일하지는 않다는 것을 의미할 수 있다.
2개의 움직임 정보 단위들이 상이하다는 것은 2개의 움직임 정보 단위들에 포함된 움직임 벡터들이 상이하다는 것, 또는 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 예측 방향들이 상이하다는 것, 또는 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 의미할 수 있다. 2개의 움직임 정보 단위들이 동일하다는 것은 2개의 움직임 정보 단위들에 포함된 움직임 벡터들이 동일하다는 것, 및 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 예측 방향들이 동일하다는 것, 및 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 의미할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 방법이 비디오 디코딩 프로세스에 적용될 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계를 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 방법이 비디오 코딩 프로세스에 적용될 때, 본 방법은 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하는 단계를 추가로 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 기초하여, K1 개의 움직임 벡터들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계를 포함할 수 있다.
임의로, 병합 움직임 정보 단위 세트 i에 대응하는 레이트 왜곡 비용은 병합 움직임 정보 단위 세트 i를 제외한 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 병합 움직임 정보 단위 세트에 대응하는 레이트 왜곡 비용 이하이다.
임의로, 병합 움직임 정보 단위 세트 i에 대응하는 왜곡은 병합 움직임 정보 단위 세트 i를 제외한 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 병합 움직임 정보 단위 세트에 대응하는 왜곡 이하이다.
N 개의 후보 병합 움직임 정보 단위 세트들 내의 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 병합 움직임 정보 단위 세트 i)에 대응하는 레이트 왜곡 비용은, 예를 들어, 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록(예를 들어, 픽처 블록 x)의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값에 대응하는 레이트 왜곡 비용일 수 있다.
N 개의 후보 병합 움직임 정보 단위 세트들 내의 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 병합 움직임 정보 단위 세트 i)에 대응하는 왜곡은, 예를 들어, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 왜곡(즉, 픽처 블록의 원래의 픽셀 값과 예측된 픽셀 값 사이의 왜곡)일 수 있다.
본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 왜곡은 구체적으로는, 예를 들어, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 차이들의 제곱 합(SSD, sum of square differences) 또는 차이들의 절댓값 합(SAD, sum of absolution differences) 또는 차이들의 합, 또는 왜곡을 측정할 수 있는 다른 왜곡 파라미터일 수 있다.
N은 양의 정수이다. 예를 들어, N은, 예를 들어, 1, 2, 3, 4, 5, 6, 8, 또는 다른 값일 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들은 서로 상이할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시킨다.
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함한다. 예를 들어, 후보 병합 움직임 정보 단위 세트 내의 제1 예측 방향에 대응하는 모든 움직임 벡터들이 같다면, 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 평행이동 움직임인 것으로 간주될 수 있고; 그렇지 않으면, 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임인 것으로 간주될 수 있으며, 여기서 제1 예측 방향은 순방향 또는 역방향이다. 다른 예에 대해, 후보 병합 움직임 정보 단위 세트 내의 순방향 예측 방향에 대응하는 모든 움직임 벡터들이 같고, 후보 병합 움직임 정보 단위 세트 내의 역방향 예측 방향에 대응하는 모든 움직임 벡터들이 같다면, 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 평행이동 움직임인 것으로 간주될 수 있고; 그렇지 않으면, 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임인 것으로 간주될 수 있다.
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함할 수 있다. 예를 들어, 2개의 움직임 정보 단위들 둘 다가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함할 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 나타낸다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함하고, 다른 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않거나, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않고, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 둘 다가 예측 방향이 순방향인 움직임 벡터를 포함하지만, 2개의 움직임 정보 단위들 중 어느 것도 예측 방향이 역방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 나타낸다. 다른 예에 대해, 2개의 움직임 정보 단위들 둘 다가 예측 방향이 역방향인 움직임 벡터를 포함하지만, 2개의 움직임 정보 단위들 중 어느 것도 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 나타낸다.
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함한다. 예를 들어, 2개의 움직임 정보 단위들 둘 다가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함하고, 2개의 움직임 정보 단위들 내의 예측 방향들이 순방향인 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일하며, 2개의 움직임 정보 단위들 내의 예측 방향들이 역방향인 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일할 때, 이는 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함하고, 다른 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않거나, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 상이하다는 것을 나타내고, 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않고, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않고, 다른 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않으며, 2개의 움직임 정보 단위들 내의 예측 방향들이 순방향인 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일할 때, 이는 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않고, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않으며, 2개의 움직임 정보 단위들 내의 예측 방향들이 역방향인 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일할 때, 이는 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 나타낼 수 있다.
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다. 수평 성분 문턱값은, 예를 들어, 픽처 블록 x의 폭의 1/3, 픽처 블록 x의 폭의 1/2, 픽처 블록 x의 폭의 2/3, 픽처 블록 x의 폭의 3/4, 또는 다른 값일 수 있다.
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다. 수직 성분 문턱값은, 예를 들어, 픽처 블록 x의 높이의 1/3, 픽처 블록 x의 높이의 1/2, 픽처 블록 x의 높이의 2/3, 픽처 블록 x의 높이의 3/4, 또는 다른 값일 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x1은 양의 정수이다. 예를 들어, x1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플만을 포함한다.
예를 들어, x1은, 예를 들어, 1, 2, 3, 4, 5, 6, 또는 다른 값일 수 있다.
예를 들어, x1 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x2 개의 픽셀 샘플들은 픽처 블록 x의 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x2는 양의 정수이다.
예를 들어, x2는, 예를 들어, 1, 2, 3, 4, 5, 6, 또는 다른 값일 수 있다.
예를 들어, x2 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 우측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x3 개의 픽셀 샘플들은 픽처 블록 x의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x3은 양의 정수이다. 예를 들어, x3 개의 픽셀 샘플들은 픽처 블록 x의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플만을 포함한다.
예를 들어, x3은, 예를 들어, 1, 2, 3, 4, 5, 6, 또는 다른 값일 수 있다.
예를 들어, x3 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 중앙 픽셀 샘플 a1에 대응하는 후보 움직임 정보 단위 세트는 x5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a2이다. 예를 들어, x5 개의 픽셀 샘플들은 픽셀 샘플 a2만을 포함한다.
픽처 블록 x가 속해 있는 비디오 프레임에서의 중앙 픽셀 샘플 a1의 위치는 픽처 블록 x가 속해 있는 비디오 프레임에 인접한 비디오 프레임에서의 픽셀 샘플 a2의 위치와 동일하고, x5는 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계는, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계 - 제1 예측 방향은 순방향 또는 역방향임 -를 포함하거나;
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계는, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계를 포함한다.
현재 비디오 프레임 내의 각각의 픽처 블록에 대해, 픽셀 값이 픽처 블록 x에 대응하는 픽셀 값 예측 모드와 유사한 모드에서 예측될 수 있다는 것이 이해될 수 있다. 확실히, 현재 비디오 프레임 내의 일부 픽처 블록들에 대해, 픽셀 값이 또한 픽처 블록 x에 대응하는 픽셀 값 예측 모드와 상이한 모드에서 예측될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계는 움직임 추정된 병합 움직임 정보 단위 세트 i를 획득하기 위해 병합 움직임 정보 단위 세트 i 내의 움직임 벡터에 대해 움직임 추정 처리를 수행하고, 비평행이동 움직임 모델 및 움직임 추정된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계를 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계는, 예를 들어, 움직임 추정된 병합 움직임 정보 단위 세트 i를 획득하기 위해 스케일링된 병합 움직임 정보 단위 세트 i 내의 움직임 벡터에 대해 움직임 추정 처리를 수행하고, 비평행이동 움직임 모델 및 움직임 추정된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계를 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하는 단계는 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀의 예측된 픽셀 값을 결정하는 단계; 또는
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하는 단계를 포함한다.
테스트 동안, 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터가 획득되고, 이어서 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값이 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 결정되면, 픽처 블록 x 내의 픽셀 블록을 입도(granularity)로 사용하여 움직임 벡터 계산을 수행하는 것이 계산 복잡도를 크게 감소시키는 데 도움을 준다는 것을 알았다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 본 방법은 픽처 블록 y 내의 K2 개의 픽셀 샘플들을 결정하는 단계 - K2는 1 초과인 정수임(K1은 K2와 같거나 같지 않을 수 있음) -; K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계 - K2는 1 초과인 정수이고, 픽처 블록 y는 픽처 블록 x에 공간적으로 인접함 -; K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계 - K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K2 개의 픽셀 샘플들 내의 픽셀 샘플 z1에 대응하는 후보 움직임 정보 단위 세트는 움직임 정보 단위 a2를 포함하며, 움직임 정보 단위 a2는 픽셀 샘플 z2의 움직임 정보 단위에 기초하여 획득되고, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 문턱값 미만이거나, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 가장 짧으며; 병합 움직임 정보 단위 세트 j 내의 K2 개의 움직임 정보 단위들은 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 각각 선택됨 -; 및 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계를 추가로 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, K2 개의 픽셀 샘플들은 픽처 블록 y의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a3에 있는 적어도 2개의 픽셀 샘플들을 추가로 포함할 수 있다. 픽처 블록 y의 좌측 상부 픽셀 샘플은 픽처 블록 y의 좌측 상부 정점이거나, 픽처 블록 y의 좌측 상부 정점을 포함하는 픽처 블록 y 내의 픽셀 블록이고; 픽처 블록 y의 좌측 하부 픽셀 샘플은 픽처 블록 y의 좌측 하부 정점이거나, 픽처 블록 y의 좌측 하부 정점을 포함하는 픽처 블록 y 내의 픽셀 블록이며; 픽처 블록 y의 우측 상부 픽셀 샘플은 픽처 블록 y의 우측 상부 정점이거나, 픽처 블록 y의 우측 상부 정점을 포함하는 픽처 블록 y 내의 픽셀 블록이고; 픽처 블록 y의 중앙 픽셀 샘플 a3은 픽처 블록 y의 중앙 픽셀이거나, 픽처 블록 y의 중앙 픽셀을 포함하는 픽처 블록 y 내의 픽셀 블록이다.
실제 적용에서, K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j는 다양한 방식들로 결정될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계는, N2 개의 후보 병합 움직임 정보 단위 세트들로부터, K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계 - N2 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K2 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택되고, N2 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N2 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K2 개의 움직임 정보 단위들을 포함하며, N2는 양의 정수임 - 를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 방법이 비디오 디코딩 프로세스에 적용될 때, N2 개의 후보 병합 움직임 정보 단위 세트들로부터, K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계는, N2 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 병합 움직임 정보 단위 세트 j의 식별자에 기초하여, K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계를 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 방법이 비디오 코딩 프로세스에 적용될 때, 본 방법은 병합 움직임 정보 단위 세트 j의 식별자를 비디오 비트 스트림 내에 기입하는 단계를 추가로 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N2 개의 후보 병합 움직임 정보 단위 세트들로부터, K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계는, N2 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 따라, K2 개의 움직임 벡터들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계를 포함할 수 있다.
임의로, 병합 움직임 정보 단위 세트 j에 대응하는 레이트 왜곡 비용은 병합 움직임 정보 단위 세트 j를 제외한 N2 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 병합 움직임 정보 단위 세트에 대응하는 레이트 왜곡 비용 이하이다.
임의로, 병합 움직임 정보 단위 세트 j에 대응하는 왜곡은 병합 움직임 정보 단위 세트 j를 제외한 N2 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 병합 움직임 정보 단위 세트에 대응하는 왜곡 이하이다.
N2 개의 후보 병합 움직임 정보 단위 세트들 내의 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, N2 개의 후보 병합 움직임 정보 단위 세트들 내의 병합 움직임 정보 단위 세트 j)에 대응하는 레이트 왜곡 비용은, 예를 들어, 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 j)를 사용하여 픽처 블록(예를 들어, 픽처 블록 y)의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값에 대응하는 레이트 왜곡 비용일 수 있다.
N2 개의 후보 병합 움직임 정보 단위 세트들 내의 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, N2 개의 후보 병합 움직임 정보 단위 세트들 내의 병합 움직임 정보 단위 세트 j)에 대응하는 왜곡은, 예를 들어, 픽처 블록(예를 들어, 픽처 블록 y)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 j)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 왜곡(즉, 픽처 블록의 원래의 픽셀 값과 예측된 픽셀 값 사이의 왜곡)일 수 있다.
본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록(예를 들어, 픽처 블록 y)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 j)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 왜곡은 구체적으로는, 예를 들어, 픽처 블록(예를 들어, 픽처 블록 y)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 j)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 차이들의 제곱 합(SSD) 또는 차이들의 절댓값 합(SAD) 또는 차이들의 합, 또는 왜곡을 측정할 수 있는 다른 왜곡 파라미터일 수 있다.
N2는 양의 정수이다. 예를 들어, N2는, 예를 들어, 1, 2, 3, 4, 5, 6, 8, 또는 다른 값일 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N2 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시킨다. 제1 조건은 N2 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 y의 움직임 모드가 비평행이동 움직임이라는 것을 포함한다. 제2 조건은 N2 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함할 수 있다. 제3 조건은 N2 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함한다. 제4 조건은 N2 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다. 제5 조건은 N2 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 y의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 y1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 y1 개의 픽셀 샘플들은 픽처 블록 y의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 y의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, y1은 양의 정수이다. 예를 들어, y1 개의 픽셀 샘플들은 픽처 블록 y의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 y의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플만을 포함한다.
예를 들어, y1은, 예를 들어, 1, 2, 3, 4, 5, 6, 또는 다른 값일 수 있다.
예를 들어, y1 개의 픽셀 샘플들은, 픽처 블록 y가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 y의 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 y의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 y의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 y의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 y의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 y2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 y2 개의 픽셀 샘플들은 픽처 블록 y의 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 y의 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, y2는 양의 정수이다.
예를 들어, y2는, 예를 들어, 1, 2, 3, 4, 5, 6, 또는 다른 값일 수 있다.
예를 들어, y2 개의 픽셀 샘플들은, 픽처 블록 y가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 y의 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 y의 우측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 y의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 y의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 y의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 y3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 y3 개의 픽셀 샘플들은 픽처 블록 y의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 y의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, y3은 양의 정수이다. 예를 들어, y3 개의 픽셀 샘플들은 픽처 블록 y의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 y의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플만을 포함한다.
예를 들어, y3은, 예를 들어, 1, 2, 3, 4, 5, 6, 또는 다른 값일 수 있다.
예를 들어, y3 개의 픽셀 샘플들은, 픽처 블록 y가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 y의 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 y의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 y의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 y의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 y의 중앙 픽셀 샘플 a3에 대응하는 후보 움직임 정보 단위 세트는 y5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 y5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a4이다. 예를 들어, y5 개의 픽셀 샘플들은 픽셀 샘플 a4만을 포함한다.
픽처 블록 y가 속해 있는 비디오 프레임에서의 중앙 픽셀 샘플 a3의 위치는 픽처 블록 y가 속해 있는 비디오 프레임에 인접한 비디오 프레임에서의 픽셀 샘플 a4의 위치와 동일하고, y5는 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계는, 예측 방향들이 병합 움직임 정보 단위 세트 j에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 j에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 j에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계 - 제1 예측 방향은 순방향 또는 역방향임 - 를 포함할 수 있거나;
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계는, 예측 방향들이 병합 움직임 정보 단위 세트 j에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 병합 움직임 정보 단위 세트 j에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 j에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 j에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 j에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계를 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계는 움직임 추정된 병합 움직임 정보 단위 세트 j를 획득하기 위해 병합 움직임 정보 단위 세트 j 내의 움직임 벡터에 대해 움직임 추정 처리를 수행하고, 비평행이동 움직임 모델 및 움직임 추정된 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계를 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계는, 예를 들어, 움직임 추정된 병합 움직임 정보 단위 세트 j를 획득하기 위해 스케일링된 병합 움직임 정보 단위 세트 j 내의 움직임 벡터에 대해 움직임 추정 처리를 수행하고, 비평행이동 움직임 모델 및 움직임 추정된 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계를 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하는 단계는 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 계산을 통해 픽처 블록 y 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 y 내의 각각의 픽셀의 움직임 벡터를 사용하여 픽처 블록 y 내의 각각의 픽셀의 예측된 픽셀 값을 결정하는 단계; 또는
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 계산을 통해 픽처 블록 y 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 y 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 픽처 블록 y 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하는 단계를 포함한다.
테스트 동안, 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 계산을 통해 픽처 블록 y 내의 각각의 픽셀 블록의 움직임 벡터가 획득되고, 이어서 픽처 블록 y 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값이 계산을 통해 획득되는 픽처 블록 y 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 결정되면, 픽처 블록 y 내의 픽셀 블록을 입도로 사용하여 움직임 벡터 계산을 수행하는 것이 계산 복잡도를 크게 감소시키는 데 도움을 준다는 것을 알았다.
본 발명의 실시예의 전술한 해결책을 더 잘 이해하고 구현하기 위해, 이하에서는 추가 설명을 위해 특정 적용 시나리오들을 사용한다.
도 2-a를 참조하면, 도 2-a는 본 발명의 다른 실시예에 따른 다른 픽처 예측 방법의 개략 플로우차트이다. 도 2-a에 도시된 바와 같이, 본 발명의 다른 실시예에 의해 제공되는 다른 픽처 예측 방법은 하기의 단계들을 포함할 수 있다:
201. 픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하는 단계.
이 실시예에서, 예를 들어, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 및 좌측 하부 픽셀 샘플을 포함한다.
픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다. 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다. 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다. 픽처 블록 x의 중앙 픽셀 샘플 a1은 픽처 블록 x의 중앙 픽셀이거나, 픽처 블록 x의 중앙 픽셀을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
픽셀 샘플이 픽셀 블록이면, 픽셀 블록의 크기는, 예를 들어, 2*2, 1*2, 4*2, 4*4, 또는 다른 크기이다.
202. K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계.
각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함한다.
본 발명의 각각의 실시예에서 언급되는 픽셀 샘플은 픽셀 또는 적어도 2개의 픽셀들을 포함하는 픽셀 블록일 수 있다.
본 발명의 각각의 실시예에서 언급되는 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함할 수 있다. 즉, 하나의 움직임 정보 단위는 하나의 움직임 벡터를 포함할 수 있거나, 상이한 예측 방향들을 갖는 2개의 움직임 벡터들을 포함할 수 있다.
움직임 정보 단위에 대응하는 예측 방향이 순방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 역방향이면, 이는 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 단방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않는다는 것을 나타내거나, 이는 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 양방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터 및 예측 방향이 역방향인 움직임 벡터를 포함한다는 것을 나타낸다.
K1은 1 초과인 정수이다. 예를 들어, K1은 2, 3, 4, 또는 다른 값일 수 있다.
K1 개의 픽셀 샘플들의 후보 움직임 정보 단위 세트들은 다양한 방식들로 결정될 수 있다.
예를 들어, 도 2-b 및 도 2-c에 도시된 바와 같이, 도 2-b 및 도 2-c는 K1이 3인 일 예를 사용한다. 픽처 블록 x의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 S1은 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함할 수 있다. x1 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플 LT와 동일한 위치를 가지는 픽셀 샘플 Col-LT, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽처 블록 C, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽처 블록 A, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽처 블록 B 중 적어도 하나를 포함한다. 예를 들어, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽처 블록 C의 움직임 정보 단위, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽처 블록 A의 움직임 정보 단위, 및 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽처 블록 B의 움직임 정보 단위가 먼저 획득될 수 있고, 획득된, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽처 블록 C의 움직임 정보 단위, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽처 블록 A의 움직임 정보 단위, 및 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽처 블록 B의 움직임 정보 단위가 픽처 블록 x의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트에 추가된다. 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽처 블록 C의 움직임 정보 단위, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽처 블록 A의 움직임 정보 단위, 및 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽처 블록 B의 움직임 정보 단위에서의 일부 또는 모든 움직임 정보 단위들이 동일하면, 후보 움직임 정보 단위 세트 S1에 대해 중복 제거(deduplication) 처리가 추가로 수행된다(본원에서 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S1 내의 움직임 정보 단위들의 양은 1 또는 2일 수 있다). 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플 LT와 동일한 위치를 가지는 픽셀 샘플 Col-LT의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S1 내의 움직임 정보 단위와 동일하면, 후보 움직임 정보 단위 세트 S1 내의 움직임 정보 단위들의 양이 3일 때까지 영 움직임 정보 단위(zero motion information unit)가 후보 움직임 정보 단위 세트 S1에 추가된다. 그에 부가하여, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플 LT와 동일한 위치를 가지는 픽셀 샘플 Col-LT의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S1 내의 임의의 움직임 정보 단위와 상이하면, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플 LT와 동일한 위치를 가지는 픽셀 샘플 Col-LT의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S1에 추가된다. 후보 움직임 정보 단위 세트 S1 내의 움직임 정보 단위들의 양이 이 경우에 여전히 3 미만이면, 후보 움직임 정보 단위 세트 S1 내의 움직임 정보 단위들의 양이 3일 때까지 영 움직임 정보 단위가 후보 움직임 정보 단위 세트 S1에 추가된다.
픽처 블록 x가 속해 있는 비디오 프레임이 순방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S1에 추가된 영 움직임 정보 단위는 예측 방향이 순방향인 영 움직임 벡터를 포함하지만 예측 방향이 역방향인 영 움직임 벡터를 포함하지 않을 수 있다. 픽처 블록 x가 속해 있는 비디오 프레임이 역방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S1에 추가된 영 움직임 정보 단위는 예측 방향이 역방향인 영 움직임 벡터를 포함하지만 예측 방향이 순방향인 영 움직임 벡터를 포함하지 않을 수 있다. 그에 부가하여, 픽처 블록 x가 속해 있는 비디오 프레임이 양방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S1에 추가된 영 움직임 정보 단위는 예측 방향이 순방향인 영 움직임 벡터와 예측 방향이 역방향인 영 움직임 벡터를 포함하고, 여기서 후보 움직임 정보 단위 세트 S1에 추가된 상이한 영 움직임 정보 단위들 내의 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 상이할 수 있고, 대응하는 참조 프레임 인덱스들은, 예를 들어, 0, 1, 2, 3, 또는 다른 값일 수 있다.
이와 유사하게, 예를 들어, 도 2-b 및 도 2-c에 도시된 바와 같이, 픽처 블록 x의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 S2는 x2 개의 픽처 블록들의 움직임 정보 단위들을 포함할 수 있다. x2 개의 픽처 블록들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플 RT와 동일한 위치를 가지는 픽셀 샘플 Col-RT, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽처 블록 E, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽처 블록 D 중 적어도 하나를 포함할 수 있다. 예를 들어, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽처 블록 E의 움직임 정보 단위 및 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽처 블록 D의 움직임 정보 단위가 먼저 획득될 수 있고, 획득된, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽처 블록 E의 움직임 정보 단위 및 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽처 블록 D의 움직임 정보 단위가 픽처 블록 x의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 S2에 추가된다. 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽처 블록 E의 움직임 정보 단위가 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽처 블록 D의 움직임 정보 단위와 동일하면, 후보 움직임 정보 단위 세트 S2에 대해 중복 제거 처리가 수행된다(본원에서 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S2 내의 움직임 정보 단위들의 양은 1이다). 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플 RT와 동일한 위치를 가지는 픽셀 샘플 Col-RT의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S2 내의 움직임 정보 단위와 동일하면, 후보 움직임 정보 단위 세트 S2 내의 움직임 정보 단위들의 양이 2일 때까지 영 움직임 정보 단위가 후보 움직임 정보 단위 세트 S2에 추가로 추가될 수 있다. 그에 부가하여, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플 RT와 동일한 위치를 가지는 픽셀 샘플 Col-RT의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S2 내의 임의의 움직임 정보 단위와 상이하면, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플 RT와 동일한 위치를 가지는 픽셀 샘플 Col-RT의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S2에 추가될 수 있다. 후보 움직임 정보 단위 세트 S2 내의 움직임 정보 단위들의 양이 이 경우에 여전히 2 미만이면, 후보 움직임 정보 단위 세트 S2 내의 움직임 정보 단위들의 양이 2일 때까지 영 움직임 정보 단위가 후보 움직임 정보 단위 세트 S2에 추가로 추가된다.
픽처 블록 x가 속해 있는 비디오 프레임이 순방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S2에 추가된 영 움직임 정보 단위는 예측 방향이 순방향인 영 움직임 벡터를 포함하지만 예측 방향이 역방향인 영 움직임 벡터를 포함하지 않을 수 있다. 픽처 블록 x가 속해 있는 비디오 프레임이 역방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S2에 추가된 영 움직임 정보 단위는 예측 방향이 역방향인 영 움직임 벡터를 포함하지만 예측 방향이 순방향인 영 움직임 벡터를 포함하지 않을 수 있다. 그에 부가하여, 픽처 블록 x가 속해 있는 비디오 프레임이 양방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S2에 추가된 영 움직임 정보 단위는 예측 방향이 순방향인 영 움직임 벡터와 예측 방향이 역방향인 영 움직임 벡터를 포함하고, 여기서 후보 움직임 정보 단위 세트 S2에 추가된 상이한 영 움직임 정보 단위들 내의 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 상이할 수 있고, 대응하는 참조 프레임 인덱스들은, 예를 들어, 0, 1, 2, 3, 또는 다른 값일 수 있다.
이와 유사하게, 예를 들어, 도 2-b 및 도 2-c에 도시된 바와 같이, 픽처 블록 x의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 S3은 x3 개의 픽처 블록들의 움직임 정보 단위들을 포함할 수 있다. x3 개의 픽처 블록들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플 LB와 동일한 위치를 가지는 픽셀 샘플 Col-LB, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽처 블록 G, 또는 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽처 블록 F 중 적어도 하나를 포함할 수 있다. 예를 들어, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽처 블록 G의 움직임 정보 단위 및 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽처 블록 F의 움직임 정보 단위가 먼저 획득될 수 있고, 획득된, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽처 블록 G의 움직임 정보 단위 및 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽처 블록 F의 움직임 정보 단위가 픽처 블록 x의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 S3에 추가될 수 있다. 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽처 블록 G의 움직임 정보 단위가 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽처 블록 F의 움직임 정보 단위와 동일하면, 후보 움직임 정보 단위 세트 S3에 대해 중복 제거 처리가 수행된다(본원에서 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S3 내의 움직임 정보 단위들의 양은 1이다). 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플 LB와 동일한 위치를 가지는 픽셀 샘플 Col-LB의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S3 내의 움직임 정보 단위와 동일하면, 후보 움직임 정보 단위 세트 S3 내의 움직임 정보 단위들의 양이 2일 때까지 영 움직임 정보 단위가 후보 움직임 정보 단위 세트 S3에 추가로 추가될 수 있다. 그에 부가하여, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플 LB와 동일한 위치를 가지는 픽셀 샘플 Col-LB의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S3 내의 임의의 움직임 정보 단위와 상이하면, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플 LB와 동일한 위치를 가지는 픽셀 샘플 Col-LB의 움직임 정보 단위가 중복 제거 처리 이후의 후보 움직임 정보 단위 세트 S3에 추가될 수 있다. 후보 움직임 정보 단위 세트 S3 내의 움직임 정보 단위들의 양이 이 경우에 여전히 2 미만이면, 후보 움직임 정보 단위 세트 S3 내의 움직임 정보 단위들의 양이 2일 때까지 영 움직임 정보 단위가 후보 움직임 정보 단위 세트 S3에 추가로 추가된다.
픽처 블록 x가 속해 있는 비디오 프레임이 순방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S3에 추가된 영 움직임 정보 단위는 예측 방향이 순방향인 영 움직임 벡터를 포함하지만 예측 방향이 역방향인 영 움직임 벡터를 포함하지 않을 수 있다. 픽처 블록 x가 속해 있는 비디오 프레임이 역방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S3에 추가된 영 움직임 정보 단위는 예측 방향이 역방향인 영 움직임 벡터를 포함하지만 예측 방향이 순방향인 영 움직임 벡터를 포함하지 않을 수 있다. 그에 부가하여, 픽처 블록 x가 속해 있는 비디오 프레임이 양방향 예측 프레임이면, 후보 움직임 정보 단위 세트 S3에 추가된 영 움직임 정보 단위는 예측 방향이 순방향인 영 움직임 벡터와 예측 방향이 역방향인 영 움직임 벡터를 포함하고, 여기서 후보 움직임 정보 단위 세트 S3에 추가된 상이한 영 움직임 정보 단위들 내의 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 상이할 수 있고, 대응하는 참조 프레임 인덱스들은, 예를 들어, 0, 1, 2, 3, 또는 다른 값일 수 있다.
2개의 움직임 정보 단위들이 상이하다는 것은 2개의 움직임 정보 단위들에 포함된 움직임 벡터들이 상이하다는 것, 또는 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 예측 방향들이 상이하다는 것, 또는 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 의미할 수 있다. 2개의 움직임 정보 단위들이 동일하다는 것은 2개의 움직임 정보 단위들에 포함된 움직임 벡터들이 동일하다는 것, 및 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 예측 방향들이 동일하다는 것, 및 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 의미할 수 있다.
더 많은 픽셀 샘플들이 존재하는 시나리오에 대해, 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트가 유사한 방식으로 획득될 수 있다는 것이 이해될 수 있다.
예를 들어, 도 2-d에 도시된 바와 같이, 도 2-d의 예에서, K1은 4이다. 도 2-d의 예에서, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1을 포함할 수 있다. 픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이며; 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 중앙 픽셀 샘플 a1은 픽처 블록 x의 중앙 픽셀이거나, 픽처 블록 x의 중앙 픽셀을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
203. K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트에 기초하여 N 개의 후보 병합 움직임 정보 단위 세트들을 결정하는 단계. N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택된다. N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함하며, N은 양의 정수이다.
후보 병합 움직임 정보 단위 세트가 후보 움직임 정보 단위 세트 S1(3개의 움직임 정보 단위들이 포함되는 것으로 가정함), 후보 움직임 정보 단위 세트 S2(2개의 움직임 정보 단위들이 포함되는 것으로 가정함), 및 후보 움직임 정보 단위 세트 S3(2개의 움직임 정보 단위들이 포함되는 것으로 가정함)에 기초하여 결정되는 것으로 가정하면, 이론상, 3*2*2=12개의 초기 후보 병합 움직임 정보 단위 세트들이 결정될 수 있다는 것이 이해될 수 있다. 그렇지만, 이용가능성을 개선시키기 위해, 예를 들어, 12개의 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들을 선별하기 위해 제1, 제2 조건, 및 제3 조건에서의 적어도 하나의 조건이 사용될 수 있다. 확실히, 후보 움직임 정보 단위 세트 S1, 후보 움직임 정보 단위 세트 S2, 및 후보 움직임 정보 단위 세트 S3에 포함된 움직임 정보 단위들의 양들이 전술한 예들로 제한되지 않기 때문에, 초기 후보 병합 움직임 정보 단위 세트들의 양이 꼭 12일 필요는 없다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시킨다.
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함한다. 예를 들어, 후보 병합 움직임 정보 단위 세트 내의 제1 예측 방향에 대응하는 모든 움직임 벡터들이 같다면, 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 평행이동 움직임인 것으로 간주될 수 있고; 그렇지 않으면, 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임인 것으로 간주될 수 있으며, 여기서 제1 예측 방향은 순방향 또는 역방향이다. 다른 예에 대해, 후보 병합 움직임 정보 단위 세트 내의 순방향 예측 방향에 대응하는 모든 움직임 벡터들이 같고, 후보 병합 움직임 정보 단위 세트 내의 역방향 예측 방향에 대응하는 모든 움직임 벡터들이 같다면, 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 평행이동 움직임인 것으로 간주될 수 있고; 그렇지 않으면, 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임인 것으로 간주될 수 있다.
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함할 수 있다 (특정의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 예측 방향들이 서로 상이하면, 특정의 후보 병합 움직임 정보 단위 세트가 유효하지 않은 것으로 간주될 수 있고, 특정의 후보 병합 움직임 정보 단위 세트가 버려질 수 있다). 예를 들어, 2개의 움직임 정보 단위들 둘 다가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함할 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 나타낸다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함하고, 다른 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않거나, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않고, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 둘 다가 예측 방향이 순방향인 움직임 벡터를 포함하지만, 2개의 움직임 정보 단위들 중 어느 것도 예측 방향이 역방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 나타낸다. 다른 예에 대해, 2개의 움직임 정보 단위들 둘 다가 예측 방향이 역방향인 움직임 벡터를 포함하지만, 2개의 움직임 정보 단위들 중 어느 것도 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 나타낸다.
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함할 수 있다 (특정의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 서로 상이하면, 특정의 후보 병합 움직임 정보 단위 세트가 유효하지 않은 것으로 간주될 수 있고, 특정의 후보 병합 움직임 정보 단위 세트가 버려질 수 있다). 예를 들어, 2개의 움직임 정보 단위들 둘 다가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함하고, 2개의 움직임 정보 단위들 내의 예측 방향들이 순방향인 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일하며, 2개의 움직임 정보 단위들 내의 예측 방향들이 역방향인 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일할 때, 이는 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함하고, 다른 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않거나, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 상이하다는 것을 나타내고, 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않고, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않을 때, 이는 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않고, 다른 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않으며, 2개의 움직임 정보 단위들 내의 예측 방향들이 순방향인 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일할 때, 이는 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 나타낼 수 있다. 다른 예에 대해, 2개의 움직임 정보 단위들 내의 하나의 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않고, 다른 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않으며, 2개의 움직임 정보 단위들 내의 예측 방향들이 역방향인 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일할 때, 이는 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 나타낼 수 있다.
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의(임의의 2개의) 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다. 구체적으로는, 예를 들어, 제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의(임의의 2개의) 움직임 정보 단위들에서의 예측 방향들이 동일한 2개의 움직임 벡터들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다. 특정의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들에 대응하는 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 초과이면, 특정의 후보 병합 움직임 정보 단위 세트가 유효하지 않은 것으로 간주될 수 있고, 특정의 후보 병합 움직임 정보 단위 세트가 추가로 버려질 수 있다. 수평 성분 문턱값은, 예를 들어, 픽처 블록 x의 폭의 1/3, 픽처 블록 x의 폭의 1/2, 픽처 블록 x의 폭의 2/3, 픽처 블록 x의 폭의 3/4, 또는 다른 값일 수 있다.
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의(임의의 2개의) 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다. 구체적으로는, 예를 들어, 제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의(임의의 2개의) 움직임 정보 단위들에서의 예측 방향들이 동일한 2개의 움직임 벡터들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다. 수직 성분 문턱값은, 예를 들어, 픽처 블록 x의 높이의 1/3, 픽처 블록 x의 높이의 1/2, 픽처 블록 x의 높이의 2/3, 픽처 블록 x의 높이의 3/4, 또는 다른 값일 수 있다.
확실히, N 개의 후보 병합 움직임 정보 단위 세트들은, 예를 들어, 예시되지 않은 다른 조건들을 추가로 충족시킬 수 있다.
제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 도입하는 것에 의해, 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별이 수행되고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들이 선별된다는 것이 이해될 수 있다. 이것은 어떤 있을 수 있는 유효하지 않은 후보 병합 움직임 정보 단위 세트들이 차후의 계산에 참여하는 것을 사전에 종료시키는 데 도움을 주고, 코딩 및 디코딩의 계산 복잡도를 감소시키는 데 추가로 도움을 준다.
특정 구현 프로세스에서, 예를 들어, 제1 조건, 제2 조건, 또는 제3 조건 중 적어도 하나가 먼저 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별을 수행하는 데 사용될 수 있고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N01 개의 후보 병합 움직임 정보 단위 세트들이 선별되며, 이어서 N01 개의 후보 병합 움직임 정보 단위 세트들에 대해 스케일링 처리가 수행되고, N01 개의 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들을 선별하기 위해 제4 조건 또는 제5 조건 중 적어도 하나가 사용된다. 확실히, 제4 조건 및 제5 조건을 참조함이 없이, 제1 조건, 제2 조건, 또는 제3 조건 중 적어도 하나를 직접 사용하는 것에 의해 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별이 수행될 수 있고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들이 선별된다.
비디오 코딩 또는 디코딩에서의 움직임 벡터가 동일한 때(동일한 때는 동일한 참조 프레임에 대응함)에 대한 하나의 방향(예측 방향)에서의 물체의 오프셋의 거리를 반영한다는 것이 이해될 수 있다. 따라서, 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 참조 프레임에 대한 픽처 블록 x의 각각의 픽셀 또는 픽셀 블록의 움직임 오프셋이 직접 획득될 수 없다. 그렇지만, 픽셀 샘플들이 동일한 예측 방향에 대응하고 동일한 참조 프레임 인덱스에 대응할 때, 픽처 블록에서의 각각의 픽셀 또는 픽셀 블록의 움직임 벡터가 병합 움직임 벡터(merged motion vector)들의 조합을 사용하여 획득될 수 있다.
따라서, 후보 병합 움직임 정보 단위 세트 내의 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행될 수 있다. 후보 병합 움직임 정보 단위 세트에 대해 수행되는 스케일링 처리는 후보 병합 움직임 정보 단위 세트 내의 하나 이상의 움직임 정보 단위 세트들 내의 움직임 벡터의 수정, 추가, 및/또는 삭제 등에 관련되어 있을 수 있다.
예를 들어, 예측 방향들이 후보 병합 움직임 정보 단위 세트 i(병합 움직임 정보 단위 세트 i 등)에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 후보 병합 움직임 정보 단위 세트에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행될 수 있고, 여기서 제1 예측 방향은 순방향 또는 역방향이다.
다른 예에 대해, 예측 방향들이 후보 병합 움직임 정보 단위 세트 i(병합 움직임 정보 단위 세트 i 등)에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 후보 병합 움직임 정보 단위 세트에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행된다.
움직임 정보 단위에 대응하는 예측 방향이 양방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함한다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 순방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 역방향이면, 이는 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다.
후보 병합 움직임 정보 단위 세트 내의 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 대응하는 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 상이한 예측 방향들 및/또는 상이한 참조 프레임 인덱스들이 추가로 조절될 수 있다.
예측 방향이 하기의 방식으로 조절될 수 있다. 예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들이 동일한 예측 방향에 대응하면, 후보 병합 움직임 정보 단위 세트 z 내의 각각의 움직임 정보 단위에 대응하는 예측 방향이 변하지 않은 채로 있을 수 있다. 그에 부가하여, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 2개의 움직임 벡터들에 대응하는 예측 방향들과 동일하게 설정될 수 있다.
구체적으로는, 예를 들어, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 제1 예측 방향(제1 예측 방향은 순방향 또는 역방향임)이고, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 제2 예측 방향(제2 예측 방향은 제1 예측 방향과 상이함)이면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 제1 예측 방향으로 조절된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 제1 예측 방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 순방향이면, 예측 방향이 역방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 추가된다(예측 방향이 역방향인 추가된 움직임 벡터의 값은 대응하는 움직임 정보 단위에서의 예측 방향이 순방향인 원래의 움직임 벡터의 값의 역(inverse)이고, 이것은 1:-1에 따라 스케일링 처리를 수행하는 것과 동등하다). 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 양방향으로 변경되고, 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 양방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 역방향이면, 예측 방향이 순방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 추가된다(예측 방향이 순방향인 추가된 움직임 벡터의 값은 대응하는 움직임 정보 단위에서의 예측 방향이 역방향인 원래의 움직임 벡터의 값의 역이고, 이것은 1:-1에 따라 스케일링 처리를 수행하는 것과 동등하다). 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 양방향으로 변경되고, 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 양방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 순방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이면, 예측 방향이 역방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들로부터 제거된다. 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 순방향으로 변경된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 순방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 역방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이면, 예측 방향이 순방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들로부터 제거된다. 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 역방향으로 변경된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 역방향이다.
참조 프레임 인덱스가 하기의 방식으로 조절될 수 있다. 구체적으로는, N 개의 후보 병합 움직임 정보 단위 세트들 내의 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들이 동일한 참조 프레임 인덱스에 대응하면, 후보 병합 움직임 정보 단위 세트 z 내의 각각의 움직임 정보 단위에 대응하는 참조 프레임 인덱스가 변하지 않은 채로 있다. 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하지만, 나머지 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들과 동일하게 조절될 수 있지만, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 그리고/또는 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 후보 병합 움직임 정보 단위 세트 z 내의 움직임 벡터 MVd는 하기의 방법을 사용하여 타겟 참조 프레임으로 스케일링 다운될 수 있다: 현재 비디오 프레임(예를 들어, 픽처 블록 x가 속해 있는 비디오 프레임)의 재생 순서 번호가 CurPoc인 것으로 가정하면 - 타겟 참조 프레임의 재생 순서 번호는 DesPoc이고 움직임 벡터 MVd의 원래의 참조 프레임의 재생 순서 번호는 SrcPoc임 -, 움직임 벡터 MVd는 타겟 참조 프레임으로 스케일링 다운되고, 움직임 벡터 MVS가 획득된다.
구체적으로는, MVS는 하기의 수식에 따라 계산을 통해 획득될 수 있다:
Figure pct00001
여기서
Figure pct00002
이다.
후보 병합 움직임 정보 단위 세트 z는 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트일 수 있고, 즉, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트 내의 움직임 벡터들에 대해 예시된 방식으로 스케일링 처리가 수행될 수 있다.
204. N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 방법이 비디오 디코딩 프로세스에 적용될 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계를 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 방법이 비디오 코딩 프로세스에 적용될 때, 본 방법은 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하는 단계를 추가로 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 방법이 비디오 디코딩 프로세스에 적용될 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 기초하여, K1 개의 움직임 벡터들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계를 포함할 수 있다.
임의로, 병합 움직임 정보 단위 세트 i에 대응하는 레이트 왜곡 비용은 병합 움직임 정보 단위 세트 i를 제외한 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 병합 움직임 정보 단위 세트에 대응하는 레이트 왜곡 비용 이하이다.
임의로, 병합 움직임 정보 단위 세트 i에 대응하는 왜곡은 병합 움직임 정보 단위 세트 i를 제외한 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 병합 움직임 정보 단위 세트에 대응하는 왜곡 이하이다.
N 개의 후보 병합 움직임 정보 단위 세트들 내의 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 병합 움직임 정보 단위 세트 i)에 대응하는 레이트 왜곡 비용은, 예를 들어, 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록(예를 들어, 픽처 블록 x)의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값에 대응하는 레이트 왜곡 비용일 수 있다.
N 개의 후보 병합 움직임 정보 단위 세트들 내의 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 병합 움직임 정보 단위 세트 i)에 대응하는 왜곡은, 예를 들어, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 왜곡(즉, 픽처 블록의 원래의 픽셀 값과 예측된 픽셀 값 사이의 왜곡)일 수 있다.
본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 왜곡은 구체적으로는, 예를 들어, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 차이들의 제곱 합(SSD) 또는 차이들의 절댓값 합(SAD) 또는 차이들의 합, 또는 왜곡을 측정할 수 있는 다른 왜곡 파라미터일 수 있다.
게다가, 계산 복잡도를 추가로 감소시키기 위해, N이 n1 초과일 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터 n1 개의 후보 병합 움직임 정보 단위 세트들이 선별될 수 있고, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i가 왜곡 또는 레이트 왜곡 비용에 기초하여 n1 개의 후보 병합 움직임 정보 단위 세트들로부터 결정된다. n1 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트에 대응하는 D(V)는 n1 개의 후보 병합 움직임 정보 단위 세트들을 제외한 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트에 대응하는 D(V) 이하이고, 여기서 n1은, 예를 들어, 3, 4, 5, 6, 또는 다른 값이다.
게다가, n1 개의 후보 병합 움직임 정보 단위 세트들 또는 n1 개의 후보 병합 움직임 정보 단위 세트들의 식별자들이 후보 병합 움직임 정보 단위 세트 리스트에 추가된다. N이 n1 이하이면, N 개의 후보 병합 움직임 정보 단위 세트들 또는 N 개의 후보 병합 움직임 정보 단위 세트들의 식별자들이 후보 병합 움직임 정보 단위 세트 리스트에 추가될 수 있다. 후보 병합 움직임 정보 단위 세트 리스트 내의 후보 병합 움직임 정보 단위 세트들은, 예를 들어, D(V)의 값에 따라, 오름차순 또는 내림차순으로 배열될 수 있다.
특정의 후보 병합 움직임 정보 단위 세트 내의 각각의 움직임 정보 단위에 대응하는 예측 방향이 단방향인 것으로 가정하면, 특정의 후보 병합 움직임 정보 단위 세트의 유클리드 거리(Euclidean distance) 파라미터 D(V)가, 예를 들어, 하기의 방식으로 계산될 수 있다:
Figure pct00003
이고, 여기서
Figure pct00004
,
Figure pct00005
, 및
Figure pct00006
는 특정의 후보 병합 움직임 정보 단위 세트에서의 예측 방향들이 동일한 3개의 움직임 벡터들이다. 전술한 예에서, 3개의 움직임 정보 단위들을 포함하는 후보 병합 움직임 정보 단위 세트가 일 예로서 사용되고, 후보 병합 움직임 정보 단위 세트가 임의의 다른 양의 움직임 정보 단위들을 포함하는 경우들이 동일한 방식으로 추론될 수 있다는 것이 이해될 수 있다.
특정의 후보 병합 움직임 정보 단위 세트 내의 각각의 움직임 정보 단위에 대응하는 예측 방향이 양방향인 것으로 가정하면, 특정의 후보 병합 움직임 정보 단위 세트의 유클리드 거리 파라미터 D(V)가, 예를 들어, 하기의 방식으로 계산될 수 있다:
Figure pct00007
이고, 여기서
Figure pct00008
,
Figure pct00009
, 및
Figure pct00010
는 특정의 후보 병합 움직임 정보 단위 세트에서의 예측 방향들이 순방향인 3개의 움직임 벡터들이고,
Figure pct00011
,
Figure pct00012
, 및
Figure pct00013
는 특정의 후보 병합 움직임 정보 단위 세트에서의 예측 방향들이 역방향인 3개의 움직임 벡터들이다. 전술한 예에서, 3개의 움직임 정보 단위들을 포함하는 후보 병합 움직임 정보 단위 세트가 일 예로서 사용되고, 후보 병합 움직임 정보 단위 세트가 임의의 다른 양의 움직임 정보 단위들을 포함하는 경우들이 동일한 방식으로 추론될 수 있다는 것이 이해될 수 있다.
205. 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x에 대해 움직임 벡터 예측을 수행하는 단계.
픽처 블록 x의 크기가 S1xS2이고, S1이 S2와 같거나 같지 않은 것으로 가정된다.
k1이 3이고, 3개의 픽셀 샘플들의 좌표들이 (0,0), (S1,0), 및 (0,S2)인 것으로 가정된다. 본원에서, 예를 들어, 픽셀 샘플의 좌측 상부 코너에 있는 픽셀의 좌표들이 계산에 참여한다. 도 2-e를 참조하면, 도 2-e는 픽처 블록 x의 4개의 정점들의 좌표들을 나타내고 있다.
3개의 픽셀 샘플들의 움직임 벡터들이 (vx0,vy0), (vx1,vy1), 및 (vx2,vy2)인 것으로 가정된다.
3개의 픽셀 샘플들의 좌표들 및 움직임 벡터들이 아핀 변환 수식(수학식 1)에 대입되고, 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터가 계산될 수 있다.
도 2-f 및 도 2-g를 참조하면, 도 2-e는 좌표들이 (x, y)인 픽셀의 아핀 변환 방식을 나타내고 있고, 도 2-f는 좌표들이 (0,0), (S1,0), 및 (0,S2)인 3개의 기지의 픽셀들의 아핀 변환 방식을 나타내고 있다.
좌표들이 (x, y)인 픽셀의 움직임 벡터는 하기의 수식에 기초하여 계산될 수 있다:
Figure pct00014
이 실시예가 주로 아핀 움직임 모델이 비평행이동 움직임 모델로서 사용되는 일 예를 사용하여 기술되어 있다는 것에 유의해야 한다. 현재 픽처 블록의 각각의 픽셀의 움직임 벡터가 K개의 픽셀 샘플들의 다른 비평행이동 움직임 모델들 및 움직임 벡터들에 기초하여 계산되는 메커니즘들에서, 사용되는 수식들이 달라질 수 있지만, 원리들은 유사하고, 메커니즘들이 본원에 하나씩 예시되지 않는다.
206. 픽처 블록 x의 각각의 픽셀의 계산된 움직임 벡터에 기초하여 픽처 블록 x의 픽셀 값을 예측하는 단계.
게다가, 비디오 코딩에서, 픽처 블록 x의 예측 잔차는 픽처 블록 x의 원래의 픽셀 값 및 픽셀 값을 예측하는 것에 의해 획득되는 픽처 블록 x의 예측된 픽셀 값을 사용하여 획득될 수 있고, 픽처 블록 x의 예측 잔차는 비디오 비트 스트림에 기입될 수 있다.
픽처 블록 x 내의 각각의 픽셀의 움직임 벡터는 아핀 움직임 모델과 같은 비평행이동 움직임 모델에 따라 계산을 통해 획득된다. 각각의 픽셀의 움직임 벡터가 획득된 후에, 루미넌스 성분(luminance component)에 대해, 움직임 벡터의 수평 성분과 수직 성분의 정밀도가 1/4이면, 각각의 픽셀의 루미넌스 성분의 예측된 값이 HEVC 보간 필터를 직접 사용함으로써 움직임 벡터에 기초하여 획득될 수 있다. 정밀도가 1/4보다 높으면, 픽처 블록 x의 1/4 정밀도 루미넌스 성분이 HEVC 보간 필터를 사용하여 움직임 벡터에 기초하여 획득되고, 이어서 픽셀의 루미넌스 성분의 예측된 값을 획득하기 위해 1/4 정밀도 루미넌스 성분에 대해 이중선형 보간이 수행된다. 마찬가지로, 크로미넌스 성분(chrominance component)에 대해, 움직임 벡터의 정밀도가 1/8보다 높으면, 이중선형 보간이 사용된다. 루미넌스 성분의 보간은 도 2-h에 도시되어 있고, 여기서 a, b, c, 및 d는 1/4 정밀도 픽셀들이고, HEVC 보간 필터를 사용하여 획득될 수 있다. 수평 방향에서의 움직임 성분 x와 수직 방향에서의 움직임 성분 y가 각각의 픽셀의 움직임 벡터에 따라 획득된 후에, 이중선형 보간이 수행될 수 있고, 여기서 S는 이중선형 보간의 정밀도이다.
병합 움직임 정보 단위 세트 i 내의 움직임 정보 단위의 예측 방향이 양방향이면, 전술한 방법에 따라 픽처 블록 x의 순방향 예측된 값은 순방향 참조 프레임에서 획득되고 픽처 블록 x의 역방향 예측된 값은 역방향 참조 프레임에서 획득되며, 이어서 픽처 블록 x의 예측된 픽셀 값을 획득하기 위해 픽처 블록 x의 순방향 예측된 값 및 픽처 블록 x의 역방향 예측된 값에 대해 가중 평균이 수행된다.
차후의 픽처 블록을 효과적으로 예측하고 움직임 벡터의 저장 효율을 개선시키기 위해, 픽처 블록 x가 전술한 방식으로 코딩될 때, 현재 픽처 블록 x가 하기의 방법에 따라 최소 움직임 벡터 저장 단위로 저장될 수 있다(최소 움직임 벡터 저장 단위가 4x4 픽처 블록의 움직임 벡터들을 저장해야 하는 것으로 가정함): 먼저 도 2-i에 따라 현재 예측 단위의 3개의 픽셀 샘플들에서의 4x4 블록의 움직임 벡터들
Figure pct00015
,
Figure pct00016
, 및
Figure pct00017
를 저장하고; 이어서 좌측 상부 코너에 있는
Figure pct00018
를 다른 최소 움직임 벡터 저장 단위들에 채운다.
따라서, 병합 움직임 정보 단위 세트 i가 결정된 후에, 픽처 블록 x의 우측 하부 픽셀 샘플의 움직임 벡터 및 픽처 블록 x의 중앙 픽셀 샘플의 움직임 벡터가 하기의 수식을 사용하여 계산될 수 있다:
Figure pct00019
Figure pct00020
은 픽처 블록 x의 우측 하부 픽셀 샘플의 저장된 움직임 벡터를 나타내고,
Figure pct00021
는 픽처 블록 x의 중앙 픽셀 샘플의 저장된 움직임 벡터를 나타낸다. 도 2-h에 도시된 바와 같이, 정점 픽셀 샘플들을 제외한 픽처 블록 x 내의 모든 픽셀 샘플들의 움직임 벡터들이
Figure pct00022
로서 저장될 수 있다.
이 실시예의 기술적 해결책에서, 픽처 블록 x의 픽셀 값은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 예측되고, 여기서 병합 움직임 정보 단위 세트 i는 조건을 충족시키는 N 개의 후보 병합 움직임 정보 단위 세트들로부터 선택되고, N 개의 후보 병합 움직임 정보 단위들 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다는 것을 알 수 있다. 병합 움직임 정보 단위 세트 i의 선택 범위가 비교적 작기 때문에, K1 개의 픽셀 샘플들의 모든 가능한 후보 움직임 정보 단위 세트들에서 엄청난 양의 계산을 수행하는 것만으로 K1 개의 픽셀 샘플들의 움직임 정보 단위들을 선별하기 위해 종래의 기술에서 사용되는 메커니즘이 포기된다. 이것은 코딩 효율을 개선시키는 데 도움을 주고, 또한 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키는 데도 도움을 주며, 게다가 비평행이동 움직임 모델을 비디오 코딩 표준에 도입하는 것을 가능하게 하고, 비평행이동 움직임 모델이 도입되기 때문에, 물체의 움직임을 보다 정확하게 기술하는 데 도움을 주고, 따라서 예측 정확도를 개선시키는 데 도움을 준다.
도 3을 참조하면, 도 3은 본 발명의 다른 실시예에 따른 비디오 코딩 방법의 개략 플로우차트이다. 도 3에 도시된 바와 같이, 본 발명의 다른 실시예에 의해 제공되는 비디오 코딩 방법은 하기의 단계들을 포함할 수 있다:
301. 비디오 코딩 장치가 픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하는 단계.
이 실시예에서, 예를 들어, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 및 좌측 하부 픽셀 샘플을 포함한다.
픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다. 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다. 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
302. 비디오 코딩 장치가 K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계.
각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함한다.
본 발명의 각각의 실시예에서 언급되는 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함할 수 있다. 즉, 하나의 움직임 정보 단위는 하나의 움직임 벡터를 포함할 수 있거나, 상이한 예측 방향들을 갖는 2개의 움직임 벡터들을 포함할 수 있다.
K1은 1 초과인 정수이다. 예를 들어, K1은 2, 3, 4, 또는 다른 값일 수 있다.
2개의 움직임 정보 단위들이 상이하다는 것은 2개의 움직임 정보 단위들에 포함된 움직임 벡터들이 상이하다는 것, 또는 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 예측 방향들이 상이하다는 것, 또는 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 상이하다는 것을 의미할 수 있다. 2개의 움직임 정보 단위들이 동일하다는 것은 2개의 움직임 정보 단위들에 포함된 움직임 벡터들이 동일하다는 것, 및 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 예측 방향들이 동일하다는 것, 및 2개의 움직임 정보 단위들에 포함된 움직임 벡터들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 의미할 수 있다.
K1 개의 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들은 다양한 방식들로 결정될 수 있다. 예를 들어, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 단계(202)에 예시되어 있는 관련된 방식으로 결정될 수 있다.
303. 비디오 코딩 장치가 K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트에 기초하여 N 개의 후보 병합 움직임 정보 단위 세트들을 결정하는 단계. N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택된다. N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함하며, N은 양의 정수이다.
후보 병합 움직임 정보 단위 세트가 후보 움직임 정보 단위 세트 S1(3개의 움직임 정보 단위들이 포함되는 것으로 가정함), 후보 움직임 정보 단위 세트 S2(2개의 움직임 정보 단위들이 포함되는 것으로 가정함), 및 후보 움직임 정보 단위 세트 S3(2개의 움직임 정보 단위들이 포함되는 것으로 가정함)에 기초하여 결정되는 것으로 가정하면, 이론상, 3*2*2=12개의 초기 후보 병합 움직임 정보 단위 세트들이 결정될 수 있다는 것이 이해될 수 있다. 그렇지만, 이용가능성을 개선시키기 위해, 예를 들어, 12개의 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들을 선별하기 위해 제1, 제2 조건, 및 제3 조건에서의 적어도 하나의 조건이 사용될 수 있다. 확실히, 후보 움직임 정보 단위 세트 S1, 후보 움직임 정보 단위 세트 S2, 및 후보 움직임 정보 단위 세트 S3에 포함된 움직임 정보 단위들의 양들이 전술한 예들로 제한되지 않기 때문에, 초기 후보 병합 움직임 정보 단위 세트들의 양이 꼭 12일 필요는 없다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시킨다.
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함한다.
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함할 수 있다 (특정의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 예측 방향들이 서로 상이하면, 특정의 후보 병합 움직임 정보 단위 세트가 유효하지 않은 것으로 간주될 수 있고, 특정의 후보 병합 움직임 정보 단위 세트가 버려질 수 있다).
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함할 수 있다 (특정의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 서로 상이하면, 특정의 후보 병합 움직임 정보 단위 세트가 유효하지 않은 것으로 간주될 수 있고, 특정의 후보 병합 움직임 정보 단위 세트가 버려질 수 있다).
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의(임의의 2개의) 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다. 수평 성분 문턱값은, 예를 들어, 픽처 블록 x의 폭의 1/3, 픽처 블록 x의 폭의 1/2, 픽처 블록 x의 폭의 2/3, 픽처 블록 x의 폭의 3/4, 또는 다른 값일 수 있다.
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의(임의의 2개의) 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다. 수직 성분 문턱값은, 예를 들어, 픽처 블록 x의 높이의 1/3, 픽처 블록 x의 높이의 1/2, 픽처 블록 x의 높이의 2/3, 픽처 블록 x의 높이의 3/4, 또는 다른 값일 수 있다.
확실히, N 개의 후보 병합 움직임 정보 단위 세트들은, 예를 들어, 예시되지 않은 다른 조건들을 추가로 충족시킬 수 있다.
제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 도입하는 것에 의해, 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별이 수행되고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들이 선별된다는 것이 이해될 수 있다. 이것은 어떤 있을 수 있는 유효하지 않은 후보 병합 움직임 정보 단위 세트들이 차후의 계산에 참여하는 것을 사전에 종료시키는 데 도움을 주고, 코딩 및 디코딩의 계산 복잡도를 감소시키는 데 추가로 도움을 준다.
특정 구현 프로세스에서, 예를 들어, 제1 조건, 제2 조건, 또는 제3 조건 중 적어도 하나가 먼저 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별을 수행하는 데 사용될 수 있고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N01 개의 후보 병합 움직임 정보 단위 세트들이 선별되며, 이어서 N01 개의 후보 병합 움직임 정보 단위 세트들에 대해 스케일링 처리가 수행되고, N01 개의 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들을 선별하기 위해 제4 조건 또는 제5 조건 중 적어도 하나가 사용된다. 확실히, 제4 조건 및 제5 조건을 참조함이 없이, 제1 조건, 제2 조건, 또는 제3 조건 중 적어도 하나를 직접 사용하는 것에 의해 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별이 수행될 수 있고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들이 선별된다.
비디오 코딩 또는 디코딩에서의 움직임 벡터가 동일한 때(동일한 때는 동일한 참조 프레임에 대응함)에 대한 하나의 방향(예측 방향)에서의 물체의 오프셋의 거리를 반영한다는 것이 이해될 수 있다. 따라서, 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 참조 프레임에 대한 픽처 블록 x의 각각의 픽셀 또는 픽셀 블록의 움직임 오프셋이 직접 획득될 수 없다. 그렇지만, 픽셀 샘플들이 동일한 예측 방향에 대응하고 동일한 참조 프레임 인덱스에 대응할 때, 픽셀 블록에서의 각각의 픽셀 또는 픽셀 블록의 움직임 벡터가 병합 움직임 벡터들의 조합을 사용하여 획득될 수 있다.
따라서, 후보 병합 움직임 정보 단위 세트 내의 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행될 수 있다. 후보 병합 움직임 정보 단위 세트에 대해 수행되는 스케일링 처리는 후보 병합 움직임 정보 단위 세트 내의 하나 이상의 움직임 정보 단위 세트들 내의 움직임 벡터의 수정, 추가, 및/또는 삭제 등에 관련되어 있을 수 있다.
예를 들어, 예측 방향들이 후보 병합 움직임 정보 단위 세트 i(병합 움직임 정보 단위 세트 i 등)에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 후보 병합 움직임 정보 단위 세트에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행될 수 있고, 여기서 제1 예측 방향은 순방향 또는 역방향이다.
다른 예에 대해, 예측 방향들이 후보 병합 움직임 정보 단위 세트 i(병합 움직임 정보 단위 세트 i 등)에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 후보 병합 움직임 정보 단위 세트에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행된다.
움직임 정보 단위에 대응하는 예측 방향이 양방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터와 예측 방향이 역방향인 움직임 벡터를 포함한다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 순방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 역방향이면, 이는 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다.
후보 병합 움직임 정보 단위 세트 내의 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 대응하는 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 상이한 예측 방향들 및/또는 상이한 참조 프레임 인덱스들이 추가로 조절될 수 있다.
예측 방향이 하기의 방식으로 조절될 수 있다. 예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들이 동일한 예측 방향에 대응하면, 후보 병합 움직임 정보 단위 세트 z 내의 각각의 움직임 정보 단위에 대응하는 예측 방향이 변하지 않은 채로 있을 수 있다. 그에 부가하여, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 2개의 움직임 벡터들에 대응하는 예측 방향들과 동일하게 설정될 수 있다.
구체적으로는, 예를 들어, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 제1 예측 방향(제1 예측 방향은 순방향 또는 역방향임)이고, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 제2 예측 방향(제2 예측 방향은 제1 예측 방향과 상이함)이면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 제1 예측 방향으로 조절된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 제1 예측 방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 순방향이면, 예측 방향이 역방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 추가된다(예측 방향이 역방향인 추가된 움직임 벡터의 값은 대응하는 움직임 정보 단위에서의 예측 방향이 순방향인 원래의 움직임 벡터의 값의 역이고, 이것은 1:-1에 따라 스케일링 처리를 수행하는 것과 동등하다). 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 양방향으로 변경되고, 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 양방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 역방향이면, 예측 방향이 순방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 추가된다(예측 방향이 순방향인 추가된 움직임 벡터의 값은 대응하는 움직임 정보 단위에서의 예측 방향이 역방향인 원래의 움직임 벡터의 값의 역이고, 이것은 1:-1에 따라 스케일링 처리를 수행하는 것과 동등하다). 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 양방향으로 변경되고, 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 양방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 순방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이면, 예측 방향이 역방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들로부터 제거된다. 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 순방향으로 변경된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 순방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 역방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이면, 예측 방향이 순방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들로부터 제거된다. 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 역방향으로 변경된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 역방향이다.
참조 프레임 인덱스가 하기의 방식으로 조절될 수 있다. 구체적으로는, N 개의 후보 병합 움직임 정보 단위 세트들 내의 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들이 동일한 참조 프레임 인덱스에 대응하면, 후보 병합 움직임 정보 단위 세트 z 내의 각각의 움직임 정보 단위에 대응하는 참조 프레임 인덱스가 변하지 않은 채로 있다. 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하지만, 나머지 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들과 동일하게 조절될 수 있지만, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 그리고/또는 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행된다.
후보 병합 움직임 정보 단위 세트 z는 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트일 수 있고, 즉, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트 내의 움직임 벡터들에 대해 예시된 방식으로 스케일링 처리가 수행될 수 있다.
304. 비디오 코딩 장치가, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 기초하여, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계.
임의로, 병합 움직임 정보 단위 세트 i에 대응하는 레이트 왜곡 비용은 병합 움직임 정보 단위 세트 i를 제외한 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 병합 움직임 정보 단위 세트에 대응하는 레이트 왜곡 비용 이하이다.
임의로, 병합 움직임 정보 단위 세트 i에 대응하는 왜곡은 병합 움직임 정보 단위 세트 i를 제외한 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 병합 움직임 정보 단위 세트에 대응하는 왜곡 이하이다.
N 개의 후보 병합 움직임 정보 단위 세트들 내의 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 병합 움직임 정보 단위 세트 i)에 대응하는 레이트 왜곡 비용은, 예를 들어, 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록(예를 들어, 픽처 블록 x)의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값에 대응하는 레이트 왜곡 비용일 수 있다.
N 개의 후보 병합 움직임 정보 단위 세트들 내의 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 병합 움직임 정보 단위 세트 i)에 대응하는 왜곡은, 예를 들어, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 왜곡(즉, 픽처 블록의 원래의 픽셀 값과 예측된 픽셀 값 사이의 왜곡)일 수 있다.
본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 왜곡은 구체적으로는, 예를 들어, 픽처 블록(예를 들어, 픽처 블록 x)의 원래의 픽셀 값과 특정의 후보 병합 움직임 정보 단위 세트(예를 들어, 병합 움직임 정보 단위 세트 i)를 사용하여 픽처 블록의 픽셀 값을 예측하는 것에 의해 획득된 픽처 블록의 예측된 픽셀 값 사이의 차이들의 제곱 합(SSD) 또는 차이들의 절댓값 합(SAD) 또는 차이들의 합, 또는 왜곡을 측정할 수 있는 다른 왜곡 파라미터일 수 있다.
게다가, 계산 복잡도를 추가로 감소시키기 위해, N이 n1 초과일 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터 n1 개의 후보 병합 움직임 정보 단위 세트들이 선별될 수 있고, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i가 왜곡 또는 레이트 왜곡 비용에 기초하여 n1 개의 후보 병합 움직임 정보 단위 세트들로부터 결정된다. n1 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트에 대응하는 D(V)는 n1 개의 후보 병합 움직임 정보 단위 세트들을 제외한 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트에 대응하는 D(V) 이하이고, 여기서 n1은, 예를 들어, 3, 4, 5, 6, 또는 다른 값이다.
게다가, n1 개의 후보 병합 움직임 정보 단위 세트들 또는 n1 개의 후보 병합 움직임 정보 단위 세트들의 식별자들이 후보 병합 움직임 정보 단위 세트 리스트에 추가된다. N이 n1 이하이면, N 개의 후보 병합 움직임 정보 단위 세트들 또는 N 개의 후보 병합 움직임 정보 단위 세트들의 식별자들이 후보 병합 움직임 정보 단위 세트 리스트에 추가될 수 있다. 후보 병합 움직임 정보 단위 세트 리스트 내의 후보 병합 움직임 정보 단위 세트들은, 예를 들어, D(V)의 값에 따라, 오름차순 또는 내림차순으로 배열될 수 있다.
특정의 후보 병합 움직임 정보 단위 세트 내의 각각의 움직임 정보 단위에 대응하는 예측 방향이 단방향인 것으로 가정하면, 특정의 후보 병합 움직임 정보 단위 세트의 유클리드 거리 파라미터 D(V)가, 예를 들어, 하기의 방식으로 계산될 수 있다:
Figure pct00023
이고, 여기서
Figure pct00024
,
Figure pct00025
, 및
Figure pct00026
는 특정의 후보 병합 움직임 정보 단위 세트에서의 예측 방향들이 동일한 3개의 움직임 벡터들이다. 전술한 예에서, 3개의 움직임 정보 단위들을 포함하는 후보 병합 움직임 정보 단위 세트가 일 예로서 사용되고, 후보 병합 움직임 정보 단위 세트가 임의의 다른 양의 움직임 정보 단위들을 포함하는 경우들이 동일한 방식으로 추론될 수 있다는 것이 이해될 수 있다.
특정의 후보 병합 움직임 정보 단위 세트 내의 각각의 움직임 정보 단위에 대응하는 예측 방향이 양방향인 것으로 가정하면, 특정의 후보 병합 움직임 정보 단위 세트의 유클리드 거리 파라미터 D(V)가, 예를 들어, 하기의 방식으로 계산될 수 있다:
Figure pct00027
이고, 여기서
Figure pct00028
,
Figure pct00029
, 및
Figure pct00030
는 특정의 후보 병합 움직임 정보 단위 세트에서의 예측 방향들이 순방향인 3개의 움직임 벡터들이고,
Figure pct00031
,
Figure pct00032
, 및
Figure pct00033
는 특정의 후보 병합 움직임 정보 단위 세트에서의 예측 방향들이 역방향인 3개의 움직임 벡터들이다. 전술한 예에서, 3개의 움직임 정보 단위들을 포함하는 후보 병합 움직임 정보 단위 세트가 일 예로서 사용되고, 후보 병합 움직임 정보 단위 세트가 임의의 다른 양의 움직임 정보 단위들을 포함하는 경우들이 동일한 방식으로 추론될 수 있다는 것이 이해될 수 있다.
305. 비디오 코딩 장치가 움직임 추정된 병합 움직임 정보 단위 세트 i를 획득하기 위해 병합 움직임 정보 단위 세트 i 내의 움직임 벡터에 대해 움직임 추정 처리를 수행하고, 비디오 코딩 장치가 비평행이동 움직임 모델 및 움직임 추정된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x에 대해 움직임 벡터 예측을 수행하는 단계.
306. 비디오 코딩 장치가 픽처 블록 x의 각각의 픽셀 또는 각각의 픽셀 블록의 계산된 움직임 벡터에 기초하여 픽처 블록 x의 픽셀 값을 예측하는 단계.
307. 비디오 코딩 장치가 픽처 블록 x의 원래의 픽셀 값 및 픽처 블록 x의 픽셀 값을 예측하는 것에 의해 획득되는 픽처 블록 x의 예측된 픽셀 값을 사용하여 픽처 블록 x의 예측 잔차를 획득하는 단계.
308. 비디오 코딩 장치가 픽처 블록 x의 예측 잔차를 비디오 비트 스트림에 기입하는 단계.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 방법이 비디오 코딩 프로세스에 적용될 때, 본 방법은 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하는 단계를 추가로 포함할 수 있다. 예를 들어, N이 1 초과일 때, 병합 움직임 정보 단위 세트 i의 식별자가 비디오 비트 스트림 내에 기입될 수 있다. N이 1일 때, 병합 움직임 정보 단위 세트 i가 일의적으로 직접 결정될 수 있다. 따라서, N이 1일 때, 인코더가 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림에 기입하지 않더라도, 디코더는 여전히 병합 움직임 정보 단위 세트 i를 결정할 수 있다.
병합 움직임 정보 단위 세트 i 내의 움직임 정보 단위의 예측 방향이 양방향이면, 전술한 방법에 따라 픽처 블록 x의 순방향 예측된 값은 순방향 참조 프레임에서 획득되고 픽처 블록 x의 역방향 예측된 값은 역방향 참조 프레임에서 획득되며, 이어서 픽처 블록 x의 예측된 픽셀 값을 획득하기 위해 픽처 블록 x의 순방향 예측된 값 및 픽처 블록 x의 역방향 예측된 값에 대해 가중 평균이 수행된다.
이 실시예의 비디오 코딩 해결책에서, 픽처 블록 x의 픽셀 값은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 예측되고, 여기서 병합 움직임 정보 단위 세트 i는 조건을 충족시키는 N 개의 후보 병합 움직임 정보 단위 세트들로부터 선택되고, N 개의 후보 병합 움직임 정보 단위들 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다는 것을 알 수 있다. 병합 움직임 정보 단위 세트 i의 선택 범위가 비교적 작기 때문에, K1 개의 픽셀 샘플들의 모든 가능한 후보 움직임 정보 단위 세트들에서 엄청난 양의 계산을 수행하는 것만으로 K1 개의 픽셀 샘플들의 움직임 정보 단위들을 선별하기 위해 종래의 기술에서 사용되는 메커니즘이 포기된다. 이것은 코딩 효율을 개선시키는 데 도움을 주고, 또한 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키는 데도 도움을 주며, 게다가 비평행이동 움직임 모델을 비디오 코딩 표준에 도입하는 것을 가능하게 하고, 비평행이동 움직임 모델이 도입되기 때문에, 물체의 움직임을 보다 정확하게 기술하는 데 도움을 주고, 따라서 예측 정확도를 개선시키는 데 도움을 준다.
도 4를 참조하면, 도 4는 본 발명의 다른 실시예에 따른 비디오 코딩 방법의 개략 플로우차트이다. 도 4에 도시된 바와 같이, 본 발명의 다른 실시예에 의해 제공되는 비디오 코딩 방법은 하기의 단계들을 포함할 수 있다:
401. 비디오 디코딩 장치가 픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하는 단계.
이 실시예에서, 예를 들어, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 및 좌측 하부 픽셀 샘플을 포함한다.
픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다. 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다. 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
픽셀 샘플이 픽셀 블록이면, 픽셀 블록의 크기는, 예를 들어, 2*2, 1*2, 4*2, 4*4, 또는 다른 크기이다.
402. 비디오 디코딩 장치가 K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계.
각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함한다.
본 발명의 각각의 실시예에서 언급되는 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함할 수 있다. 즉, 하나의 움직임 정보 단위는 하나의 움직임 벡터를 포함할 수 있거나, 상이한 예측 방향들을 갖는 2개의 움직임 벡터들을 포함할 수 있다.
움직임 정보 단위에 대응하는 예측 방향이 순방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 역방향이면, 이는 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 단방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터를 포함하지만 예측 방향이 역방향인 움직임 벡터를 포함하지 않는다는 것을 나타내거나, 이는 움직임 정보 단위가 예측 방향이 역방향인 움직임 벡터를 포함하지만 예측 방향이 순방향인 움직임 벡터를 포함하지 않는다는 것을 나타낸다. 움직임 정보 단위에 대응하는 예측 방향이 양방향이면, 이는 움직임 정보 단위가 예측 방향이 순방향인 움직임 벡터 및 예측 방향이 역방향인 움직임 벡터를 포함한다는 것을 나타낸다.
K1은 1 초과인 정수이다. 예를 들어, K1은 2, 3, 4, 또는 다른 값일 수 있다.
K1 개의 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들은 다양한 방식들로 결정될 수 있다. 예를 들어, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 단계(202)에 예시되어 있는 관련된 방식으로 결정될 수 있다.
403. 비디오 디코딩 장치가 K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트에 기초하여 N 개의 후보 병합 움직임 정보 단위 세트들을 결정하는 단계. N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택된다. N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함하며, N은 양의 정수이다.
후보 병합 움직임 정보 단위 세트가 후보 움직임 정보 단위 세트 S1(3개의 움직임 정보 단위들이 포함되는 것으로 가정함), 후보 움직임 정보 단위 세트 S2(2개의 움직임 정보 단위들이 포함되는 것으로 가정함), 및 후보 움직임 정보 단위 세트 S3(2개의 움직임 정보 단위들이 포함되는 것으로 가정함)에 기초하여 결정되는 것으로 가정하면, 이론상, 3*2*2=12개의 초기 후보 병합 움직임 정보 단위 세트들이 결정될 수 있다는 것이 이해될 수 있다. 그렇지만, 이용가능성을 개선시키기 위해, 예를 들어, 12개의 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들을 선별하기 위해 제1, 제2 조건, 및 제3 조건에서의 적어도 하나의 조건이 사용될 수 있다. 확실히, 후보 움직임 정보 단위 세트 S1, 후보 움직임 정보 단위 세트 S2, 및 후보 움직임 정보 단위 세트 S3에 포함된 움직임 정보 단위들의 양들이 전술한 예들로 제한되지 않기 때문에, 초기 후보 병합 움직임 정보 단위 세트들의 양이 꼭 12일 필요는 없다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시킨다.
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함한다.
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함할 수 있다 (특정의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 예측 방향들이 서로 상이하면, 특정의 후보 병합 움직임 정보 단위 세트가 유효하지 않은 것으로 간주될 수 있고, 특정의 후보 병합 움직임 정보 단위 세트가 버려질 수 있다).
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함할 수 있다 (특정의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 서로 상이하면, 특정의 후보 병합 움직임 정보 단위 세트가 유효하지 않은 것으로 간주될 수 있고, 특정의 후보 병합 움직임 정보 단위 세트가 버려질 수 있다).
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의(임의의 2개의) 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다. 수평 성분 문턱값은, 예를 들어, 픽처 블록 x의 폭의 1/3, 픽처 블록 x의 폭의 1/2, 픽처 블록 x의 폭의 2/3, 픽처 블록 x의 폭의 3/4, 또는 다른 값일 수 있다.
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의(임의의 2개의) 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다. 수직 성분 문턱값은, 예를 들어, 픽처 블록 x의 높이의 1/3, 픽처 블록 x의 높이의 1/2, 픽처 블록 x의 높이의 2/3, 픽처 블록 x의 높이의 3/4, 또는 다른 값일 수 있다.
확실히, N 개의 후보 병합 움직임 정보 단위 세트들은, 예를 들어, 예시되지 않은 다른 조건들을 추가로 충족시킬 수 있다.
제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 도입하는 것에 의해, 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별이 수행되고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들이 선별된다는 것이 이해될 수 있다. 이것은 어떤 있을 수 있는 유효하지 않은 후보 병합 움직임 정보 단위 세트들이 차후의 계산에 참여하는 것을 사전에 종료시키는 데 도움을 주고, 코딩 및 디코딩의 계산 복잡도를 감소시키는 데 추가로 도움을 준다.
특정 구현 프로세스에서, 예를 들어, 제1 조건, 제2 조건, 또는 제3 조건 중 적어도 하나가 먼저 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별을 수행하는 데 사용될 수 있고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N01 개의 후보 병합 움직임 정보 단위 세트들이 선별되며, 이어서 N01 개의 후보 병합 움직임 정보 단위 세트들에 대해 스케일링 처리가 수행되고, N01 개의 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들을 선별하기 위해 제4 조건 또는 제5 조건 중 적어도 하나가 사용된다. 확실히, 제4 조건 및 제5 조건을 참조함이 없이, 제1 조건, 제2 조건, 또는 제3 조건 중 적어도 하나를 직접 사용하는 것에 의해 초기 후보 병합 움직임 정보 단위 세트들에 대해 선별이 수행될 수 있고, 초기 후보 병합 움직임 정보 단위 세트들로부터 N 개의 후보 병합 움직임 정보 단위 세트들이 선별된다.
비디오 코딩 또는 디코딩에서의 움직임 벡터가 동일한 때(동일한 때는 동일한 참조 프레임에 대응함)에 대한 하나의 방향(예측 방향)에서의 물체의 오프셋의 거리를 반영한다는 것이 이해될 수 있다. 따라서, 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 참조 프레임에 대한 픽처 블록 x의 각각의 픽셀 또는 픽셀 블록의 움직임 오프셋이 직접 획득될 수 없다. 그렇지만, 픽셀 샘플들이 동일한 예측 방향에 대응하고 동일한 참조 프레임 인덱스에 대응할 때, 픽셀 블록에서의 각각의 픽셀 또는 픽셀 블록의 움직임 벡터가 병합 움직임 벡터들의 조합을 사용하여 획득될 수 있다.
따라서, 후보 병합 움직임 정보 단위 세트 내의 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행될 수 있다. 후보 병합 움직임 정보 단위 세트에 대해 수행되는 스케일링 처리는 후보 병합 움직임 정보 단위 세트 내의 하나 이상의 움직임 정보 단위 세트들 내의 움직임 벡터의 수정, 추가, 및/또는 삭제 등에 관련되어 있을 수 있다.
예를 들어, 예측 방향들이 후보 병합 움직임 정보 단위 세트 i(병합 움직임 정보 단위 세트 i 등)에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 후보 병합 움직임 정보 단위 세트에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행될 수 있고, 여기서 제1 예측 방향은 순방향 또는 역방향이다.
다른 예에 대해, 예측 방향들이 후보 병합 움직임 정보 단위 세트 i(병합 움직임 정보 단위 세트 i 등)에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 후보 병합 움직임 정보 단위 세트에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행된다.
후보 병합 움직임 정보 단위 세트 내의 상이한 픽셀 샘플들의 움직임 정보 단위들이 상이한 예측 방향들에 대응하고 그리고/또는 상이한 참조 프레임 인덱스들에 대응할 때, 대응하는 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위들에 대응하는 상이한 예측 방향들 및/또는 상이한 참조 프레임 인덱스들이 추가로 조절될 수 있다.
예측 방향이 하기의 방식으로 조절될 수 있다. 예를 들어, N 개의 후보 병합 움직임 정보 단위 세트들 내의 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들이 동일한 예측 방향에 대응하면, 후보 병합 움직임 정보 단위 세트 z 내의 각각의 움직임 정보 단위에 대응하는 예측 방향이 변하지 않은 채로 있을 수 있다. 그에 부가하여, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 2개의 움직임 벡터들에 대응하는 예측 방향들과 동일하게 설정될 수 있다.
구체적으로는, 예를 들어, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 제1 예측 방향(제1 예측 방향은 순방향 또는 역방향임)이고, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 제2 예측 방향(제2 예측 방향은 제1 예측 방향과 상이함)이면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 제1 예측 방향으로 조절된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 제1 예측 방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 순방향이면, 예측 방향이 역방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 추가된다(예측 방향이 역방향인 추가된 움직임 벡터의 값은 대응하는 움직임 정보 단위에서의 예측 방향이 순방향인 원래의 움직임 벡터의 값의 역이고, 이것은 1:-1에 따라 스케일링 처리를 수행하는 것과 동등하다). 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 양방향으로 변경되고, 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 양방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 역방향이면, 예측 방향이 순방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 추가된다(예측 방향이 순방향인 추가된 움직임 벡터의 값은 대응하는 움직임 정보 단위에서의 예측 방향이 역방향인 원래의 움직임 벡터의 값의 역이고, 이것은 1:-1에 따라 스케일링 처리를 수행하는 것과 동등하다). 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 양방향으로 변경되고, 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 양방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 순방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이면, 예측 방향이 역방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들로부터 제거된다. 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 순방향으로 변경된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 순방향이다.
다른 예에 대해, 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 역방향이지만, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 양방향이면, 예측 방향이 순방향인 움직임 벡터가 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들로부터 제거된다. 이러한 방식으로, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 예측 방향들이 또한 역방향으로 변경된다. 즉, 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들에 대응하는 예측 방향들이 모두 역방향이다.
참조 프레임 인덱스가 하기의 방식으로 조절될 수 있다. 구체적으로는, N 개의 후보 병합 움직임 정보 단위 세트들 내의 후보 병합 움직임 정보 단위 세트 z 내의 모든 움직임 정보 단위들이 동일한 참조 프레임 인덱스에 대응하면, 후보 병합 움직임 정보 단위 세트 z 내의 각각의 움직임 정보 단위에 대응하는 참조 프레임 인덱스가 변하지 않은 채로 있다. 후보 병합 움직임 정보 단위 세트 z 내의 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하지만, 나머지 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 상이하면, 후보 병합 움직임 정보 단위 세트 z 내의 나머지 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들과 동일하게 조절될 수 있지만, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 그리고/또는 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 후보 병합 움직임 정보 단위 세트에 대해 스케일링 처리가 수행된다.
후보 병합 움직임 정보 단위 세트 z는 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트일 수 있고, 즉, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트 내의 움직임 벡터들에 대해 예시된 방식으로 스케일링 처리가 수행될 수 있다.
404. 비디오 디코딩 장치가 병합 움직임 정보 단위 세트 i의 식별자 및 픽처 블록 x의 예측 잔차를 획득하기 위해 비디오 비트 스트림에 대해 디코딩 처리를 수행하고, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 단계.
405. 비디오 디코딩 장치가 움직임 추정된 병합 움직임 정보 단위 세트 i를 획득하기 위해 병합 움직임 정보 단위 세트 i 내의 움직임 벡터에 대해 움직임 추정 처리를 수행하고, 비디오 디코딩 장치가 비평행이동 움직임 모델 및 움직임 추정된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x에 대해 움직임 벡터 예측을 수행하는 단계.
406. 비디오 디코딩 장치가 픽처 블록 x의 예측된 픽셀 값을 획득하기 위해 픽처 블록 x의 각각의 픽셀 또는 각각의 픽셀 블록의 계산된 움직임 벡터에 기초하여 픽처 블록 x의 픽셀 값을 예측하는 단계.
407. 비디오 디코딩 장치가 픽처 블록 x의 예측된 픽셀 값 및 픽처 블록 x의 예측 잔차를 사용하여 픽처 블록 x를 재구성하는 단계.
이 실시예의 비디오 디코딩 해결책에서, 픽처 블록 x의 픽셀 값은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 예측되고, 여기서 병합 움직임 정보 단위 세트 i는 조건을 충족시키는 N 개의 후보 병합 움직임 정보 단위 세트들로부터 선택되고, N 개의 후보 병합 움직임 정보 단위들 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다는 것을 알 수 있다. 병합 움직임 정보 단위 세트 i의 선택 범위가 비교적 작기 때문에, K1 개의 픽셀 샘플들의 모든 가능한 후보 움직임 정보 단위 세트들에서 엄청난 양의 계산을 수행하는 것만으로 K1 개의 픽셀 샘플들의 움직임 정보 단위들을 선별하기 위해 종래의 기술에서 사용되는 메커니즘이 포기된다. 이것은 디코딩 효율을 개선시키는 데 도움을 주고, 또한 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키는 데도 도움을 주며, 게다가 비평행이동 움직임 모델을 비디오 코딩 표준에 도입하는 것을 가능하게 하고, 비평행이동 움직임 모델이 도입되기 때문에, 물체의 움직임을 보다 정확하게 기술하는 데 도움을 주고, 따라서 예측 정확도를 개선시키는 데 도움을 준다.
이하에서는 어떤 비평행이동 움직임 모델들의 가능한 형태들을 기술한다.
아핀 움직임 모델은 하기의 모델을 충족시키는 움직임 모델이고:
Figure pct00034
여기서 a, b, c, d, e, 및 f는 상수 파라미터들이고; (x, y)는 픽셀의 원래의 좌표들이며; (x', y')은 아핀 변환 이후의 픽셀의 좌표들이고; Vx는 x-축 방향에서의 움직임 벡터이며; Vy는 y-축 방향에서의 움직임 벡터이다.
회전 움직임 모델은 다음과 같이 나타내어질 수 있고:
Figure pct00035
여기서 α는 회전각이고, a 및 b는 파라미터들이다.
원근 움직임 모델은 다음과 같이 나타내어질 수 있고:
Figure pct00036
여기서
Figure pct00037
는 원근 행렬(perspective matrix)이다.
전단 움직임 모델은 다음과 같이 나타내어질 수 있고:
Figure pct00038
여기서
Figure pct00039
는 전단 행렬(shearing matrix)이고, 다른 파라미터들은 상수 파라미터들이다.
스케일링 움직임 모델은 다음과 같이 나타내어질 수 있고:
Figure pct00040
여기서
Figure pct00041
는 상수 파라미터들이다.
이차 움직임 모델(quadratic motion model)은 다음과 같이 나타내어질 수 있고:
Figure pct00042
여기서 u와 v는 원래의 좌표들을 나타내고, x와 y는 변환 이후의 좌표들을 나타내며, 다른 파라미터들은 상수 파라미터들이다.
이중선형 움직임 모델은 다음과 같이 나타내어질 수 있다:
Figure pct00043
4개의 픽셀 샘플들의 움직임 벡터들이 획득될 때(예를 들어, 도 2-d는 K1이 4인 경우를 나타냄), 임의의 픽셀의 움직임 벡터가 이중선형 움직임 모델에 기초하여 획득될 수 있고, 함수는 다음과 같이 표현된다:
Figure pct00044
.
이 함수에서, a, b, c, d, e, f, g, h, 및 i는 상수 파라미터들이고; (x, y)는 픽셀의 원래의 좌표들이며; (x', y')은 이중선형 움직임 이후의 픽셀의 좌표들이고; Vx는 x-축 방향에서의 움직임 벡터이며; Vy는 y-축 방향에서의 움직임 벡터이다.
전술한 예가 일부 비평행이동 움직임 모델들의 일부 가능한 표현 형태들만을 나타낸다는 것이 이해될 수 있다. 확실히, 비평행이동 움직임 모델들의 다른 형태들이 존재할 수 있다.
본 발명의 일부 구현 방식들에서, 다수의 참조 프레임들의 경우에 움직임 벡터의 아핀 움직임 모델이 구축되고, 이것은 종래 기술이 다수의 참조 프레임들의 경우에서 효과적으로 사용될 수 없다는 단점을 극복하는 데 도움을 준다. 그에 부가하여, 선별 조건을 도입하는 것에 의해 일부 유효하지 않은 병합 움직임 정보 단위 세트들이 선별되고, 이것은 코딩 효율을 개선시키는 데 추가로 도움을 준다. 표 1에 나타낸 바와 같이, 표 1은 LDP 모드에서의 코딩 성능이다. 표준의 테스트 조건 하에서, 비트 레이트가 평균적으로 1.6%만큼 절감될 수 있고, 비트 레이트가 최대 4.7%만큼 절감될 수 있다.
Figure pct00045
이하에서는 전술한 해결책들을 구현하기 위한 관련 장치들을 추가로 제공한다.
도 5를 참조하면, 본 발명의 일 실시예는 픽처 예측 장치(500)를 추가로 제공한다. 본 장치는,
픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하도록 - 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K1은 2 이상인 정수임 - 구성된 제1 결정 유닛(510);
K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 - 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택되고, 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함함 - 구성된 제2 결정 유닛(520); 및
비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 구성된 예측 유닛(530)을 포함할 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
제2 결정 유닛(520)은, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 - N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택되고, N은 양의 정수이며, N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함함 - 특정 방식으로 구성된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시킨다.
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함한다.
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함한다.
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함한다.
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다.
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1에 있는 적어도 2개의 픽셀 샘플들을 포함한다.
픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이며; 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 중앙 픽셀 샘플 a1은 픽처 블록 x의 중앙 픽셀이거나, 픽처 블록 x의 중앙 픽셀을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x1은 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x1 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x2 개의 픽셀 샘플들은 픽처 블록 x의 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x2는 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x2 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 우측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x3 개의 픽셀 샘플들은 픽처 블록 x의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x3은 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x3 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 중앙 픽셀 샘플 a1에 대응하는 후보 움직임 정보 단위 세트는 x5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a2이다.
픽처 블록 x가 속해 있는 비디오 프레임에서의 중앙 픽셀 샘플 a1의 위치는 픽처 블록 x가 속해 있는 비디오 프레임에 인접한 비디오 프레임에서의 픽셀 샘플 a2의 위치와 동일하고, x5는 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
예측 유닛(530)은, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 - 제1 예측 방향은 순방향 또는 역방향임 - 특정 방식으로 구성되거나;
예측 유닛(530)은, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 특정 방식으로 구성된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
예측 유닛(530)은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 특정 방식으로 구성되거나;
예측 유닛(530)은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 특정 방식으로 구성된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
제1 결정 유닛(510)은 픽처 블록 y 내의 K2 개의 픽셀 샘플들을 결정하고, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하도록 - K2는 1 초과인 정수이고, 픽처 블록 y는 픽처 블록 x에 공간적으로 인접하며, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함함 - 추가로 구성되고;
제2 결정 유닛(520)은 K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하도록 - K2 개의 픽셀 샘플들 내의 픽셀 샘플 z1에 대응하는 후보 움직임 정보 단위 세트는 움직임 정보 단위 a2를 포함하며, 움직임 정보 단위 a2는 픽셀 샘플 z2의 움직임 정보 단위에 기초하여 획득되고, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 문턱값 미만이거나, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 가장 짧으며; 병합 움직임 정보 단위 세트 j 내의 K2 개의 움직임 정보 단위들은 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 각각 선택됨 - 추가로 구성되며;
예측 유닛(530)은 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하도록 추가로 구성된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델은 아핀 움직임 모델, 포물선 움직임 모델, 회전 움직임 모델, 원근 움직임 모델, 전단 움직임 모델, 스케일링 움직임 모델, 또는 이중선형 움직임 모델 중 임의의 것일 수 있다.
픽처 예측 장치(500)가 비디오 코딩 장치에 적용될 수 있거나, 픽처 예측 장치(500)가 비디오 디코딩 장치에 적용될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 코딩 장치에 적용될 때, 제2 결정 유닛(520)은, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 따라, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 특정 방식으로 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 코딩 장치에 적용될 때, 예측 유닛(530)은 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하도록 추가로 구성된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 디코딩 장치에 적용될 때, 제2 결정 유닛은, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 특정 방식으로 구성된다.
이 실시예에서의 픽처 예측 장치(500)의 각각의 기능 모듈의 기능들이 전술한 방법 실시예에서의 방법에 따라 특정 방식으로 구현될 수 있다는 것이 이해될 수 있다. 그의 특정 구현 프로세스에 대해, 전술한 방법 실시예에서의 관련 설명이 참조될 수 있고, 상세들이 본원에 다시 기술되지 않는다. 픽처 예측 장치(500)는 비디오를 출력하고 재생할 필요가 있는 임의의 장치, 예를 들어, 노트북 컴퓨터, 태블릿 컴퓨터, 개인용 컴퓨터, 또는 휴대폰과 같은 디바이스일 수 있다.
이 실시예의 픽처 예측 장치(500)가 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하고, 여기서 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위가 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다는 것을 알 수 있다. 병합 움직임 정보 단위 세트 i의 선택 범위가 비교적 작기 때문에, K1 개의 픽셀 샘플들의 모든 가능한 후보 움직임 정보 단위 세트들에서 엄청난 양의 계산을 수행하는 것만으로 K1 개의 픽셀 샘플들의 움직임 정보 단위들을 선별하기 위해 종래의 기술에서 사용되는 메커니즘이 포기된다. 이것은 코딩 효율을 개선시키는 데 도움을 주고, 또한 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키는 데도 도움을 주며, 게다가 비평행이동 움직임 모델을 비디오 코딩 표준에 도입하는 것을 가능하게 하고, 비평행이동 움직임 모델이 도입되기 때문에, 물체의 움직임을 보다 정확하게 기술하는 데 도움을 주고, 따라서 예측 정확도를 개선시키는 데 도움을 준다.
도 6을 참조하면, 도 6은 본 발명의 일 실시예에 따른 픽처 예측 장치(600)의 개략도이다. 픽처 예측 장치(600)는 적어도 하나의 버스(601), 버스(601)에 연결된 적어도 하나의 프로세서(602), 및 버스(601)에 연결된 적어도 하나의 메모리(603)를 포함할 수 있다.
프로세서(602)가, 픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하며 - 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K1은 2 이상인 정수임 -; K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하고 - 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택되고, 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함함 -; 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하게 구성되도록, 프로세서(602)는, 버스(601)를 사용하여, 메모리(603)에 저장된 코드를 호출한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
프로세서(602)는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 - N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택되고, N은 양의 정수이며, N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함함 - 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시킨다.
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함한다.
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함한다.
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함한다.
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다.
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1에 있는 적어도 2개의 픽셀 샘플들을 포함한다.
픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이며; 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 중앙 픽셀 샘플 a1은 픽처 블록 x의 중앙 픽셀이거나, 픽처 블록 x의 중앙 픽셀을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x1은 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x1 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x2 개의 픽셀 샘플들은 픽처 블록 x의 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x2는 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x2 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 우측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x3 개의 픽셀 샘플들은 픽처 블록 x의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x3은 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x3 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 중앙 픽셀 샘플 a1에 대응하는 후보 움직임 정보 단위 세트는 x5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a2이다.
픽처 블록 x가 속해 있는 비디오 프레임에서의 중앙 픽셀 샘플 a1의 위치는 픽처 블록 x가 속해 있는 비디오 프레임에 인접한 비디오 프레임에서의 픽셀 샘플 a2의 위치와 동일하고, x5는 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
프로세서(602)는, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 - 제1 예측 방향은 순방향 또는 역방향임 - 구성될 수 있거나;
프로세서(602)는, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
프로세서(602)는 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 구성될 수 있거나;
프로세서(602)는 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
프로세서(602)는, 픽처 블록 y 내의 K2 개의 픽셀 샘플들을 결정하고, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하며 - K2는 1 초과인 정수이고, 픽처 블록 y는 픽처 블록 x에 공간적으로 인접하며, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함함 -; K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하고 - K2 개의 픽셀 샘플들 내의 픽셀 샘플 z1에 대응하는 후보 움직임 정보 단위 세트는 움직임 정보 단위 a2를 포함하며, 움직임 정보 단위 a2는 픽셀 샘플 z2의 움직임 정보 단위에 기초하여 획득되고, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 문턱값 미만이거나, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 가장 짧으며; 병합 움직임 정보 단위 세트 j 내의 K2 개의 움직임 정보 단위들은 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 각각 선택됨 -; 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하도록 추가로 구성된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델은 아핀 움직임 모델, 포물선 움직임 모델, 회전 움직임 모델, 원근 움직임 모델, 전단 움직임 모델, 스케일링 움직임 모델, 또는 이중선형 움직임 모델 중 임의의 것일 수 있다.
픽처 예측 장치(500)가 비디오 코딩 장치에 적용될 수 있거나, 픽처 예측 장치(500)가 비디오 디코딩 장치에 적용될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 코딩 장치에 적용될 때, 프로세서(602)는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 따라, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 특정 방식으로 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 코딩 장치에 적용될 때, 프로세서(602)는 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하도록 추가로 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 디코딩 장치에 적용될 때, 프로세서(602)는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 특정 방식으로 구성될 수 있다.
이 실시예에서의 픽처 예측 장치(600)의 각각의 기능 모듈의 기능들이 전술한 방법 실시예에서의 방법에 따라 특정 방식으로 구현될 수 있다는 것이 이해될 수 있다. 그의 특정 구현 프로세스에 대해, 전술한 방법 실시예에서의 관련 설명이 참조될 수 있고, 상세들이 본원에 다시 기술되지 않는다. 픽처 예측 장치(600)는 비디오를 출력하고 재생할 필요가 있는 임의의 장치, 예를 들어, 노트북 컴퓨터, 태블릿 컴퓨터, 개인용 컴퓨터, 또는 휴대폰과 같은 디바이스일 수 있다.
이 실시예의 픽처 예측 장치(600)가 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하고, 여기서 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위가 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다는 것을 알 수 있다. 병합 움직임 정보 단위 세트 i의 선택 범위가 비교적 작기 때문에, K1 개의 픽셀 샘플들의 모든 가능한 후보 움직임 정보 단위 세트들에서 엄청난 양의 계산을 수행하는 것만으로 K1 개의 픽셀 샘플들의 움직임 정보 단위들을 선별하기 위해 종래의 기술에서 사용되는 메커니즘이 포기된다. 이것은 코딩 효율을 개선시키는 데 도움을 주고, 또한 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키는 데도 도움을 주며, 게다가 비평행이동 움직임 모델을 비디오 코딩 표준에 도입하는 것을 가능하게 하고, 비평행이동 움직임 모델이 도입되기 때문에, 물체의 움직임을 보다 정확하게 기술하는 데 도움을 주고, 따라서 예측 정확도를 개선시키는 데 도움을 준다.
도 7을 참조하면, 도 7은 본 발명의 다른 실시예에 따른 픽처 예측 장치(700)의 구조 블록도이다. 픽처 예측 장치(700)는 적어도 하나의 프로세서(701), 메모리(705), 및 적어도 하나의 통신 버스(702)를 포함할 수 있다. 통신 버스(702)는 컴포넌트들 사이의 연결들 및 통신을 구현하도록 구성된다. 픽처 예측 장치(700)는 적어도 하나의 네트워크 인터페이스(704) 및/또는 사용자 인터페이스(703)를 임의로 포함할 수 있다. 사용자 인터페이스(703)는 디스플레이(예를 들어, 터치스크린, LCD, 홀로그래픽(holographic) 영상, CRT, 또는 프로젝터(projector), 포인터 디바이스(예를 들어, 마우스, 트랙볼(trackball), 터치패드, 또는 터치스크린), 카메라, 및/또는 픽업 장치(pickup apparatus) 등을 포함할 수 있다.
메모리(705)는 판독 전용 메모리 및 랜덤 액세스 메모리를 포함하고, 명령어 및 데이터를 프로세서(701)에 제공할 수 있다. 메모리(705)의 일부는 비휘발성 랜덤 액세스 메모리를 추가로 포함할 수 있다.
일부 구현 방식들에서, 메모리(705)는 하기의 요소들을 포함한다: 실행가능 모듈들 또는 데이터 구조들, 또는 그의 서브셋, 또는 그의 확장 세트(extended set):
다양한 기본 서비스들을 구현하고 하드웨어 기반 작업들을 처리하도록 구성된, 다양한 시스템 프로그램들을 포함하는, 운영 체제(7051); 및
다양한 애플리케이션 서비스들을 구현하도록 구성된, 다양한 애플리케이션 프로그램들을 포함하는, 애플리케이션 프로그램 모듈(7052).
본 발명의 이 실시예에서, 메모리(705)에 저장된 프로그램 또는 명령어를 호출하는 것에 의해, 프로세서(701)는 픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하며 - 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K1은 2 이상인 정수임 -; K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하고 - 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택되고, 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함함 -; 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 구성된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
프로세서(701)는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 - N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택되고, N은 양의 정수이며, N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함함 - 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시킨다.
제1 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함한다.
제2 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함한다.
제3 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함한다.
제4 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함한다.
제5 조건은 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, K1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1에 있는 적어도 2개의 픽셀 샘플들을 포함한다.
픽처 블록 x의 좌측 상부 픽셀 샘플은 픽처 블록 x의 좌측 상부 정점이거나, 픽처 블록 x의 좌측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 좌측 하부 픽셀 샘플은 픽처 블록 x의 좌측 하부 정점이거나, 픽처 블록 x의 좌측 하부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이며; 픽처 블록 x의 우측 상부 픽셀 샘플은 픽처 블록 x의 우측 상부 정점이거나, 픽처 블록 x의 우측 상부 정점을 포함하는 픽처 블록 x 내의 픽셀 블록이고; 픽처 블록 x의 중앙 픽셀 샘플 a1은 픽처 블록 x의 중앙 픽셀이거나, 픽처 블록 x의 중앙 픽셀을 포함하는 픽처 블록 x 내의 픽셀 블록이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x1 개의 픽셀 샘플들은 픽처 블록 x의 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x1은 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x1 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x2 개의 픽셀 샘플들은 픽처 블록 x의 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x2는 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x2 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 우측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x3 개의 픽셀 샘플들은 픽처 블록 x의 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 픽처 블록 x의 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x3은 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, x3 개의 픽셀 샘플들은, 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 픽처 블록 x의 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 픽처 블록 x의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함한다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 블록 x의 중앙 픽셀 샘플 a1에 대응하는 후보 움직임 정보 단위 세트는 x5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 여기서 x5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a2이다.
픽처 블록 x가 속해 있는 비디오 프레임에서의 중앙 픽셀 샘플 a1의 위치는 픽처 블록 x가 속해 있는 비디오 프레임에 인접한 비디오 프레임에서의 픽셀 샘플 a2의 위치와 동일하고, x5는 양의 정수이다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
프로세서(701)는, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 - 제1 예측 방향은 순방향 또는 역방향임 - 구성될 수 있거나;
프로세서(701)는, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 픽처 블록 x의 픽셀 값을 예측하도록 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
프로세서(701)는 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 구성될 수 있거나;
프로세서(701)는 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 사용하여 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서,
프로세서(701)는, 픽처 블록 y 내의 K2 개의 픽셀 샘플들을 결정하고, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하며 - K2는 1 초과인 정수이고, 픽처 블록 y는 픽처 블록 x에 공간적으로 인접하며, K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함함 -; K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하고 - K2 개의 픽셀 샘플들 내의 픽셀 샘플 z1에 대응하는 후보 움직임 정보 단위 세트는 움직임 정보 단위 a2를 포함하며, 움직임 정보 단위 a2는 픽셀 샘플 z2의 움직임 정보 단위에 기초하여 획득되고, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 문턱값 미만이거나, 픽셀 샘플 z2는 픽처 블록 x 내의 픽셀 샘플이고 픽셀 샘플 z2와 픽셀 샘플 z1 사이의 거리는 가장 짧으며; 병합 움직임 정보 단위 세트 j 내의 K2 개의 움직임 정보 단위들은 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 각각 선택됨 -; 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 j를 사용하여 픽처 블록 y의 픽셀 값을 예측하도록 추가로 구성된다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 비평행이동 움직임 모델은 아핀 움직임 모델, 포물선 움직임 모델, 회전 움직임 모델, 원근 움직임 모델, 전단 움직임 모델, 스케일링 움직임 모델, 또는 이중선형 움직임 모델 중 임의의 것일 수 있다.
픽처 예측 장치(500)가 비디오 코딩 장치에 적용될 수 있거나, 픽처 예측 장치(500)가 비디오 디코딩 장치에 적용될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 코딩 장치에 적용될 때, 프로세서(701)는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 따라, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 특정 방식으로 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 코딩 장치에 적용될 때, 프로세서(701)는 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하도록 추가로 구성될 수 있다.
임의로, 본 발명의 일부 실시가능 구현 방식들에서, 픽처 예측 장치가 비디오 디코딩 장치에 적용될 때, 프로세서(701)는, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 특정 방식으로 구성될 수 있다.
이 실시예에서의 픽처 예측 장치(700)의 각각의 기능 모듈의 기능들이 전술한 방법 실시예에서의 방법에 따라 특정 방식으로 구현될 수 있다는 것이 이해될 수 있다. 그의 특정 구현 프로세스에 대해, 전술한 방법 실시예에서의 관련 설명이 참조될 수 있고, 상세들이 본원에 다시 기술되지 않는다. 픽처 예측 장치(700)는 비디오를 출력하고 재생할 필요가 있는 임의의 장치, 예를 들어, 노트북 컴퓨터, 태블릿 컴퓨터, 개인용 컴퓨터, 또는 휴대폰과 같은 디바이스일 수 있다.
이 실시예의 픽처 예측 장치(700)는 픽처 블록 x의 픽셀 값을 비평행이동 움직임 모델 및 병합 움직임 정보 단위 세트 i를 사용하여 예측하고, 여기서 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위가 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택된다는 것을 알 수 있다. 병합 움직임 정보 단위 세트 i의 선택 범위가 비교적 작기 때문에, K1 개의 픽셀 샘플들의 모든 가능한 후보 움직임 정보 단위 세트들에서 엄청난 양의 계산을 수행하는 것만으로 K1 개의 픽셀 샘플들의 움직임 정보 단위들을 선별하기 위해 종래의 기술에서 사용되는 메커니즘이 포기된다. 이것은 코딩 효율을 개선시키는 데 도움을 주고, 또한 비평행이동 움직임 모델에 기초하여 수행되는 픽처 예측의 계산 복잡도를 감소시키는 데도 도움을 주며, 게다가 비평행이동 움직임 모델을 비디오 코딩 표준에 도입하는 것을 가능하게 하고, 비평행이동 움직임 모델이 도입되기 때문에, 물체의 움직임을 보다 정확하게 기술하는 데 도움을 주고, 따라서 예측 정확도를 개선시키는 데 도움을 준다.
설명을 간략하게 하기 위해, 전술한 방법 실시예들이 일련의 동작들로서 표현되어 있다는 것에 유의해야 한다. 그렇지만, 본 발명에 따르면, 일부 단계들이 다른 순서들로 수행되거나 동시에 수행될 수 있기 때문에, 본 기술 분야의 통상의 기술자라면 본 발명이 기술된 동작 순서로 제한되지 않는다는 것을 잘 알 것이다. 그에 부가하여, 본 기술 분야의 통상의 기술자라면 또한 명세서에 기술된 실시예들 모두가 예시적인 실시예들이고 관련 동작들 및 모듈들이 본 발명에 꼭 필수적인 것은 아님을 잘 알 것이다.
전술한 실시예들에서, 각각의 실시예의 설명은 각자의 주안점들을 가진다. 일 실시예에서 상세히 기술되지 않은 부분에 대해서는, 다른 실시예들에서의 관련 설명들이 참조될 수 있다.
본 출원에서 제공되는 몇 개의 실시예들에서, 개시된 장치가 다른 방식들로 구현될 수 있다는 것을 잘 알 것이다. 예를 들어, 기술된 장치 실시예는 예시적인 것에 불과하다. 예를 들어, 유닛 분할은 논리적 기능 분할에 불과하고, 실제의 구현에서는 다른 분할일 수 있다. 예를 들어, 복수의 유닛들 또는 컴포넌트들이 다른 시스템에 결합 또는 통합될 수 있거나, 일부 특징들이 무시될 수 있거나 수행되지 않을 수 있다. 그에 부가하여, 표시된 또는 논의된 상호 결합들 또는 직접 결합들 또는 통신 연결들이 어떤 인터페이스들을 통해 구현될 수 있다. 장치들 또는 유닛들 사이의 간접 결합들 또는 통신 연결들이 전자적 또는 다른 형태들로 구현될 수 있다.
개별적인 부분들로서 기술되어 있는 유닛들은 물리적으로 분리될 수 있거나 그렇지 않을 수 있고, 유닛들로서 표시된 부분들이 물리적 유닛들일 수 있거나 그렇지 않을 수 있거나, 하나의 위치에 배치될 수 있거나, 복수의 네트워크 유닛들에 분산될 수 있다. 유닛들의 일부 또는 전부가 실시예들의 해결책들의 목적들을 달성하기 위해 실제의 요구들에 따라 선택될 수 있다.
그에 부가하여, 본 발명의 실시예들에서의 기능 유닛들이 하나의 처리 유닛에 통합될 수 있거나, 유닛들 각각은 물리적으로 단독으로 존재할 수 있거나, 2개 이상의 유닛들이 하나의 유닛으로 통합되어 있다. 통합된 유닛은 하드웨어의 형태로 구현될 수 있거나, 소프트웨어 기능 유닛의 형태로 구현될 수 있다.
전술한 통합된 유닛이 소프트웨어 기능 유닛의 형태로 구현되고 독립적인 제품으로서 판매되거나 사용될 때, 통합된 유닛은 컴퓨터 판독가능 저장 매체에 저장될 수 있다. 이러한 이해에 기초하여, 본 발명의 기술적 해결책들이 본질적으로, 또는 종래 기술에 기여하는 부분이, 또는 기술적 해결책들의 전부 또는 일부가 소프트웨어 제품의 형태로 구현될 수 있다. 소프트웨어 제품은 저장 매체에 저장되고, 본 발명의 실시예들에 기술된 방법들의 단계들의 전부 또는 일부를 수행하라고 컴퓨터 디바이스(개인용 컴퓨터, 서버, 또는 네트워크 디바이스일 수 있음)에 지시하는 몇 개의 명령어들을 포함한다. 전술한 저장 매체는 USB 플래시 드라이브, 판독 전용 메모리(Read-Only Memory, ROM), 랜덤 액세스 메모리(Random Access Memory, RAM), 이동식 하드 디스크, 자기 디스크, 또는 광학 디스크와 같은, 프로그램 코드를 저장할 수 있는 임의의 매체를 포함한다.
전술한 실시예들은 본 발명의 기술적 해결책들을 기술하려는 것에 불과하고, 본 발명을 제한하려는 것이 아니다. 비록 본 발명이 전술한 실시예들을 참조하여 기술되지만, 본 기술 분야의 통상의 기술자라면, 본 발명의 실시예들의 기술적 해결책들의 사상 및 범주를 벗어남이 없이, 전술한 실시예들에 기술된 기술적 해결책들에 대해 여전히 수정을 행할 수 있거나 그의 어떤 기술적 특징들을 등가물로 대체할 수 있다는 것을 잘 알 것이다.

Claims (32)

  1. 픽처 예측 방법으로서,
    픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, 상기 K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계 - 각각의 픽셀 샘플에 대응하는 상기 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K1은 2 이상인 정수임 -;
    K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트(merged motion information unit set) i를 결정하는 단계 -
    상기 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 상기 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택되고, 상기 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함함 -; 및
    비평행이동 움직임 모델(non-translational motion model) 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 픽셀 값을 예측하는 단계를 포함하는, 방법.
  2. 제1항에 있어서, K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하는 상기 단계는,
    N 개의 후보 병합 움직임 정보 단위 세트들로부터, 상기 K1 개의 움직임 정보 단위들을 포함하는 상기 병합 움직임 정보 단위 세트 i를 결정하는 단계 - 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 상기 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 상기 후보 움직임 정보 단위 세트들 내의 제약조건-부합(constraint-compliant) 움직임 정보 단위들의 적어도 일부로부터 선택되고, N은 양의 정수이며, 상기 N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함함 - 를 포함하는, 방법.
  3. 제2항에 있어서, 상기 N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시키고,
    상기 제1 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 상기 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함하고;
    상기 제2 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함하며;
    상기 제3 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함하고;
    상기 제4 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함하며;
    상기 제5 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함하는, 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 K1 개의 픽셀 샘플들은 상기 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1에 있는 적어도 2개의 픽셀 샘플들을 포함하고,
    상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플은 상기 픽처 블록 x의 좌측 상부 정점이거나, 상기 픽처 블록 x의 좌측 상부 정점을 포함하는 상기 픽처 블록 x 내의 픽셀 블록이고; 상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플은 상기 픽처 블록 x의 좌측 하부 정점이거나, 상기 픽처 블록 x의 좌측 하부 정점을 포함하는 상기 픽처 블록 x 내의 픽셀 블록이며; 상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플은 상기 픽처 블록 x의 우측 상부 정점이거나, 상기 픽처 블록 x의 우측 상부 정점을 포함하는 상기 픽처 블록 x 내의 픽셀 블록이고; 상기 픽처 블록 x의 상기 중앙 픽셀 샘플 a1은 상기 픽처 블록 x의 중앙 픽셀이거나, 상기 픽처 블록 x의 중앙 픽셀을 포함하는 상기 픽처 블록 x 내의 픽셀 블록인, 방법.
  5. 제4항에 있어서,
    상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 상기 x1 개의 픽셀 샘플들은 상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x1은 양의 정수이고,
    상기 x1 개의 픽셀 샘플들은, 상기 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 상기 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 상기 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 상기 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함하는, 방법.
  6. 제4항 또는 제5항에 있어서,
    상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 상기 x2 개의 픽셀 샘플들은 상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x2는 양의 정수이고,
    상기 x2 개의 픽셀 샘플들은, 상기 픽처 블록 x가 속해 있는 상기 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 상기 픽처 블록 x의 우측 에지에 공간적으로 인접한 픽셀 샘플, 상기 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 상기 픽처 블록 x의 상기 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함하는, 방법.
  7. 제4항 내지 제6항 중 어느 한 항에 있어서,
    상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 상기 x3 개의 픽셀 샘플들은 상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x3은 양의 정수이고,
    상기 x3 개의 픽셀 샘플들은, 상기 픽처 블록 x가 속해 있는 상기 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 상기 픽처 블록 x의 상기 좌측 에지에 공간적으로 인접한 픽셀 샘플, 상기 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 상기 픽처 블록 x의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함하는, 방법.
  8. 제4항 내지 제7항 중 어느 한 항에 있어서,
    상기 픽처 블록 x의 상기 중앙 픽셀 샘플 a1에 대응하는 후보 움직임 정보 단위 세트는 x5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 상기 x5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a2이고,
    상기 픽처 블록 x가 속해 있는 상기 비디오 프레임에서의 상기 중앙 픽셀 샘플 a1의 위치는 상기 픽처 블록 x가 속해 있는 상기 비디오 프레임에 인접한 비디오 프레임에서의 상기 픽셀 샘플 a2의 위치와 동일하며, x5는 양의 정수인, 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 픽셀 값을 예측하는 상기 단계는, 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 상기 제1 예측 방향인 상기 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 상기 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 상기 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 상기 픽셀 값을 예측하는 단계 - 상기 제1 예측 방향은 순방향 또는 역방향임 - 를 포함하거나;
    비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 픽셀 값을 예측하는 상기 단계는,
    예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 순방향인 상기 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 역방향인 상기 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 상기 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 상기 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 상기 픽셀 값을 예측하는 단계를 포함하는, 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서,
    상기 방법은
    픽처 블록 y 내의 K2 개의 픽셀 샘플들을 결정하고, 상기 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하는 단계 - K2는 1 초과인 정수이고, 상기 픽처 블록 y는 상기 픽처 블록 x에 공간적으로 인접함 -;
    K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하는 단계 -
    상기 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 상기 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, 상기 K2 개의 픽셀 샘플들 내의 픽셀 샘플 z1에 대응하는 후보 움직임 정보 단위 세트는 움직임 정보 단위 a2를 포함하며, 상기 움직임 정보 단위 a2는 픽셀 샘플 z2의 움직임 정보 단위에 기초하여 획득되고, 상기 픽셀 샘플 z2는 상기 픽처 블록 x 내의 픽셀 샘플이고 상기 픽셀 샘플 z2와 상기 픽셀 샘플 z1 사이의 거리는 문턱값 미만이거나, 상기 픽셀 샘플 z2는 상기 픽처 블록 x 내의 픽셀 샘플이고 상기 픽셀 샘플 z2와 상기 픽셀 샘플 z1 사이의 거리는 가장 짧으며; 상기 병합 움직임 정보 단위 세트 j 내의 상기 K2 개의 움직임 정보 단위들은 상기 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 상기 후보 움직임 정보 단위 세트 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 각각 선택됨 -; 및
    상기 비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 j를 사용하여 상기 픽처 블록 y의 픽셀 값을 예측하는 단계를 추가로 포함하는, 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서, 상기 비평행이동 움직임 모델은 아핀 움직임 모델(affine motion model), 포물선 움직임 모델(parabolic motion model), 회전 움직임 모델(rotational motion model), 원근 움직임 모델(perspective motion model), 전단 움직임 모델(shearing motion model), 스케일링 움직임 모델(scaling motion model), 또는 이중선형 움직임 모델(bilinear motion model) 중 임의의 것인, 방법.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서,
    비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 픽셀 값을 예측하는 상기 단계는
    상기 비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 상기 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 상기 픽처 블록 x 내의 각각의 픽셀의 상기 움직임 벡터를 사용하여 상기 픽처 블록 x 내의 각각의 픽셀의 예측된 픽셀 값을 결정하는 단계; 또는
    상기 비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 상기 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 상기 픽처 블록 x 내의 각각의 픽셀 블록의 상기 움직임 벡터를 사용하여 상기 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하는 단계를 포함하는, 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서,
    상기 픽처 예측 방법이 비디오 코딩 프로세스에 적용되거나, 상기 픽처 예측 방법이 비디오 디코딩 프로세스에 적용되는, 방법.
  14. 제13항에 있어서, 상기 픽처 예측 방법이 상기 비디오 디코딩 프로세스에 적용될 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 상기 K1 개의 움직임 정보 단위들을 포함하는 상기 병합 움직임 정보 단위 세트 i를 결정하는 상기 단계는, 상기 N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 상기 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, 상기 K1 개의 움직임 정보 단위들을 포함하는 상기 병합 움직임 정보 단위 세트 i를 결정하는 단계를 포함하는, 방법.
  15. 제13항에 있어서, 상기 픽처 예측 방법이 상기 비디오 코딩 프로세스에 적용될 때, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 상기 K1 개의 움직임 정보 단위들을 포함하는 상기 병합 움직임 정보 단위 세트 i를 결정하는 상기 단계는, 상기 N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡(distortion) 또는 레이트 왜곡 비용(rate distortion cost)에 따라, 상기 K1 개의 움직임 정보 단위들을 포함하는 상기 병합 움직임 정보 단위 세트 i를 결정하는 단계를 포함하는, 방법.
  16. 제13항 또는 제15항에 있어서, 상기 픽처 예측 방법이 상기 비디오 코딩 프로세스에 적용될 때, 상기 방법은 상기 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하는 단계를 추가로 포함하는, 방법.
  17. 픽처 예측 장치로서,
    픽처 블록 x 내의 K1 개의 픽셀 샘플들을 결정하고, 상기 K1 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하도록 구성된 제1 결정 유닛 - 각각의 픽셀 샘플에 대응하는 상기 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함하고, K1은 2 이상인 정수임 -;
    K1 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 i를 결정하도록 구성된 제2 결정 유닛 - 상기 병합 움직임 정보 단위 세트 i 내의 각각의 움직임 정보 단위는 상기 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 후보 움직임 정보 단위 세트들 내의 움직임 정보 단위들의 적어도 일부로부터 선택되고, 상기 움직임 정보 단위는 예측 방향이 순방향인 움직임 벡터 및/또는 예측 방향이 역방향인 움직임 벡터를 포함함 -; 및
    비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 픽셀 값을 예측하도록 구성된 예측 유닛을 포함하는, 장치.
  18. 제17항에 있어서,
    상기 제2 결정 유닛은, N 개의 후보 병합 움직임 정보 단위 세트들로부터, 상기 K1 개의 움직임 정보 단위들을 포함하는 상기 병합 움직임 정보 단위 세트 i를 결정하도록 - 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트에 포함된 각각의 움직임 정보 단위는 상기 K1 개의 픽셀 샘플들 내의 상이한 픽셀 샘플들에 대응하는 상기 후보 움직임 정보 단위 세트들 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 선택되고, N은 양의 정수이며, 상기 N 개의 후보 병합 움직임 정보 단위 세트들은 서로 상이하고, 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 각각의 후보 병합 움직임 정보 단위 세트는 K1 개의 움직임 정보 단위들을 포함함 - 구체적으로 구성되는, 장치.
  19. 제18항에 있어서, 상기 N 개의 후보 병합 움직임 정보 단위 세트들은 제1 조건, 제2 조건, 제3 조건, 제4 조건, 또는 제5 조건 중 적어도 하나를 충족시키고,
    상기 제1 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 움직임 정보 단위에 의해 표시된 상기 픽처 블록 x의 움직임 모드가 비평행이동 움직임이라는 것을 포함하고;
    상기 제2 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 예측 방향들이 동일하다는 것을 포함하며;
    상기 제3 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 적어도 2개의 움직임 정보 단위들에 대응하는 참조 프레임 인덱스들이 동일하다는 것을 포함하고;
    상기 제4 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수평 성분들 사이의 차이의 절댓값이 수평 성분 문턱값 이하라는 것을 포함하며;
    상기 제5 조건은 상기 N 개의 후보 병합 움직임 정보 단위 세트들 내의 임의의 후보 병합 움직임 정보 단위 세트 내의 2개의 움직임 정보 단위들의 수직 성분들 사이의 차이의 절댓값이 수직 성분 문턱값 이하라는 것을 포함하는, 장치.
  20. 제17항 내지 제19항 중 어느 한 항에 있어서, 상기 K1 개의 픽셀 샘플들은 상기 픽처 블록 x의 좌측 상부 픽셀 샘플, 우측 상부 픽셀 샘플, 좌측 하부 픽셀 샘플, 및 중앙 픽셀 샘플 a1에 있는 적어도 2개의 픽셀 샘플들을 포함하고,
    상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플은 상기 픽처 블록 x의 좌측 상부 정점이거나, 상기 픽처 블록 x의 좌측 상부 정점을 포함하는 상기 픽처 블록 x 내의 픽셀 블록이고; 상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플은 상기 픽처 블록 x의 좌측 하부 정점이거나, 상기 픽처 블록 x의 좌측 하부 정점을 포함하는 상기 픽처 블록 x 내의 픽셀 블록이며; 상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플은 상기 픽처 블록 x의 우측 상부 정점이거나, 상기 픽처 블록 x의 우측 상부 정점을 포함하는 상기 픽처 블록 x 내의 픽셀 블록이고; 상기 픽처 블록 x의 상기 중앙 픽셀 샘플 a1은 상기 픽처 블록 x의 중앙 픽셀이거나, 상기 픽처 블록 x의 중앙 픽셀을 포함하는 상기 픽처 블록 x 내의 픽셀 블록인, 장치.
  21. 제20항에 있어서,
    상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x1 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 상기 x1 개의 픽셀 샘플들은 상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x1은 양의 정수이고,
    상기 x1 개의 픽셀 샘플들은, 상기 픽처 블록 x가 속해 있는 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 상기 픽처 블록 x의 상기 좌측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 상기 픽처 블록 x의 좌측 에지에 공간적으로 인접한 픽셀 샘플, 상기 픽처 블록 x의 좌측 상부에 공간적으로 인접한 픽셀 샘플, 또는 상기 픽처 블록 x의 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함하는, 장치.
  22. 제20항 또는 제21항에 있어서,
    상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x2 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 상기 x2 개의 픽셀 샘플들은 상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x2는 양의 정수이고,
    상기 x2 개의 픽셀 샘플들은, 상기 픽처 블록 x가 속해 있는 상기 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 상기 픽처 블록 x의 상기 우측 상부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 상기 픽처 블록 x의 우측 에지에 공간적으로 인접한 픽셀 샘플, 상기 픽처 블록 x의 우측 상부에 공간적으로 인접한 픽셀 샘플, 또는 상기 픽처 블록 x의 상기 상부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함하는, 장치.
  23. 제20항 내지 제22항 중 어느 한 항에 있어서,
    상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트는 x3 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 상기 x3 개의 픽셀 샘플들은 상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플에 공간적으로 인접한 적어도 하나의 픽셀 샘플 및/또는 상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플에 시간적으로 인접한 적어도 하나의 픽셀 샘플을 포함하며, x3은 양의 정수이고,
    상기 x3 개의 픽셀 샘플들은, 상기 픽처 블록 x가 속해 있는 상기 비디오 프레임에 시간적으로 인접한 비디오 프레임에 있는, 상기 픽처 블록 x의 상기 좌측 하부 픽셀 샘플과 동일한 위치를 가지는 픽셀 샘플, 상기 픽처 블록 x의 상기 좌측 에지에 공간적으로 인접한 픽셀 샘플, 상기 픽처 블록 x의 좌측 하부에 공간적으로 인접한 픽셀 샘플, 또는 상기 픽처 블록 x의 하부 에지에 공간적으로 인접한 픽셀 샘플 중 적어도 하나를 포함하는, 장치.
  24. 제20항 내지 제23항 중 어느 한 항에 있어서,
    상기 픽처 블록 x의 상기 중앙 픽셀 샘플 a1에 대응하는 후보 움직임 정보 단위 세트는 x5 개의 픽셀 샘플들의 움직임 정보 단위들을 포함하고, 상기 x5 개의 픽셀 샘플들 내의 하나의 픽셀 샘플은 픽셀 샘플 a2이고,
    상기 픽처 블록 x가 속해 있는 상기 비디오 프레임에서의 상기 중앙 픽셀 샘플 a1의 위치는 상기 픽처 블록 x가 속해 있는 상기 비디오 프레임에 인접한 비디오 프레임에서의 상기 픽셀 샘플 a2의 위치와 동일하며, x5는 양의 정수인, 장치.
  25. 제17항 내지 제24항 중 어느 한 항에 있어서, 상기 예측 유닛은, 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 제1 예측 방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 상기 제1 예측 방향인 상기 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 상기 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 상기 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 상기 픽셀 값을 예측하도록 - 상기 제1 예측 방향은 순방향 또는 역방향임 - 구체적으로 구성되거나;
    상기 예측 유닛은, 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 순방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응하고 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 역방향인 움직임 벡터들이 상이한 참조 프레임 인덱스들에 대응할 때, 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 순방향인 상기 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되고 예측 방향들이 상기 병합 움직임 정보 단위 세트 i에서의 역방향인 상기 움직임 벡터들이 동일한 참조 프레임으로 스케일링 다운되도록, 상기 병합 움직임 정보 단위 세트 i에 대해 스케일링 처리를 수행하고, 상기 비평행이동 움직임 모델 및 스케일링된 병합 움직임 정보 단위 세트 i를 사용하여 상기 픽처 블록 x의 상기 픽셀 값을 예측하도록 구체적으로 구성되는, 장치.
  26. 제17항 내지 제25항 중 어느 한 항에 있어서, 상기 예측 유닛은 상기 비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 상기 픽처 블록 x 내의 각각의 픽셀의 움직임 벡터를 획득하고, 계산을 통해 획득되는 상기 픽처 블록 x 내의 각각의 픽셀의 상기 움직임 벡터를 사용하여 상기 픽처 블록 x 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 구체적으로 구성되거나;
    상기 예측 유닛은 상기 비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 i를 사용하여 계산을 통해 상기 픽처 블록 x 내의 각각의 픽셀 블록의 움직임 벡터를 획득하고, 계산을 통해 획득되는 상기 픽처 블록 x 내의 각각의 픽셀 블록의 상기 움직임 벡터를 사용하여 상기 픽처 블록 x 내의 각각의 픽셀 블록 내의 각각의 픽셀의 예측된 픽셀 값을 결정하도록 구체적으로 구성되는, 방법.
  27. 제17항 내지 제26항 중 어느 한 항에 있어서,
    상기 제1 결정 유닛은 픽처 블록 y 내의 K2 개의 픽셀 샘플들을 결정하고, 상기 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 후보 움직임 정보 단위 세트를 결정하도록 - K2는 1 초과인 정수이고, 상기 픽처 블록 y는 상기 픽처 블록 x에 공간적으로 인접하며, 상기 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 상기 후보 움직임 정보 단위 세트는 적어도 하나의 후보 움직임 정보 단위를 포함함 - 추가로 구성되고;
    상기 제2 결정 유닛은 K2 개의 움직임 정보 단위들을 포함하는 병합 움직임 정보 단위 세트 j를 결정하도록 - 상기 K2 개의 픽셀 샘플들 내의 픽셀 샘플 z1에 대응하는 후보 움직임 정보 단위 세트는 움직임 정보 단위 a2를 포함하며, 상기 움직임 정보 단위 a2는 픽셀 샘플 z2의 움직임 정보 단위에 기초하여 획득되고, 상기 픽셀 샘플 z2는 상기 픽처 블록 x 내의 픽셀 샘플이고 상기 픽셀 샘플 z2와 상기 픽셀 샘플 z1 사이의 거리는 문턱값 미만이거나, 상기 픽셀 샘플 z2는 상기 픽처 블록 x 내의 픽셀 샘플이고 상기 픽셀 샘플 z2와 상기 픽셀 샘플 z1 사이의 거리는 가장 짧으며; 상기 병합 움직임 정보 단위 세트 j 내의 상기 K2 개의 움직임 정보 단위들은 상기 K2 개의 픽셀 샘플들 내의 각각의 픽셀 샘플에 대응하는 상기 후보 움직임 정보 단위 세트 내의 제약조건-부합 움직임 정보 단위들의 적어도 일부로부터 각각 선택됨 - 추가로 구성되며;
    상기 예측 유닛은 상기 비평행이동 움직임 모델 및 상기 병합 움직임 정보 단위 세트 j를 사용하여 상기 픽처 블록 y의 픽셀 값을 예측하도록 추가로 구성되는, 장치.
  28. 제17항 내지 제27항 중 어느 한 항에 있어서, 상기 비평행이동 움직임 모델은 아핀 움직임 모델, 포물선 움직임 모델, 회전 움직임 모델, 원근 움직임 모델, 전단 움직임 모델, 스케일링 움직임 모델, 또는 이중선형 움직임 모델 중 임의의 것인, 장치.
  29. 제17항 내지 제28항 중 어느 한 항에 있어서, 상기 픽처 예측 장치가 비디오 코딩 장치에 적용되거나, 상기 픽처 예측 장치가 비디오 디코딩 장치에 적용되는, 장치.
  30. 제29항에 있어서, 상기 픽처 예측 장치가 상기 비디오 코딩 장치에 적용될 때, 상기 제2 결정 유닛은, 상기 N 개의 후보 병합 움직임 정보 단위 세트들로부터, 왜곡 또는 레이트 왜곡 비용에 따라, 상기 K1 개의 움직임 정보 단위들을 포함하는 상기 병합 움직임 정보 단위 세트 i를 결정하도록 구체적으로 구성되는, 장치.
  31. 제29항 또는 제30항에 있어서, 상기 픽처 예측 장치가 상기 비디오 코딩 장치에 적용될 때, 상기 예측 유닛은 상기 병합 움직임 정보 단위 세트 i의 식별자를 비디오 비트 스트림 내에 기입하도록 추가로 구성되는, 장치.
  32. 제29항에 있어서, 상기 픽처 예측 장치가 상기 비디오 디코딩 장치에 적용될 때, 상기 제2 결정 유닛은, 상기 N 개의 후보 병합 움직임 정보 단위 세트들로부터, 비디오 비트 스트림으로부터 획득되는 상기 병합 움직임 정보 단위 세트 i의 식별자에 기초하여, 상기 K1 개의 움직임 정보 단위들을 포함하는 상기 병합 움직임 정보 단위 세트 i를 결정하도록 구체적으로 구성되는, 장치.
KR1020177007312A 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치 KR102013771B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410584175.1 2014-10-27
CN201410584175.1A CN104363451B (zh) 2014-10-27 2014-10-27 图像预测方法及相关装置
PCT/CN2015/077295 WO2016065873A1 (zh) 2014-10-27 2015-04-23 图像预测方法及相关装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020197024188A Division KR102070982B1 (ko) 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치

Publications (2)

Publication Number Publication Date
KR20170045264A true KR20170045264A (ko) 2017-04-26
KR102013771B1 KR102013771B1 (ko) 2019-08-23

Family

ID=52530673

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020177007312A KR102013771B1 (ko) 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치
KR1020197024188A KR102070982B1 (ko) 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치
KR1020207002096A KR102248254B1 (ko) 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치
KR1020217012948A KR102334151B1 (ko) 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR1020197024188A KR102070982B1 (ko) 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치
KR1020207002096A KR102248254B1 (ko) 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치
KR1020217012948A KR102334151B1 (ko) 2014-10-27 2015-04-23 이미지 예측 방법 및 관련 장치

Country Status (6)

Country Link
US (4) US10440380B2 (ko)
EP (1) EP3177015B1 (ko)
JP (2) JP6490203B2 (ko)
KR (4) KR102013771B1 (ko)
CN (1) CN104363451B (ko)
WO (1) WO2016065873A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019203504A1 (ko) * 2018-04-15 2019-10-24 엘지전자 주식회사 비디오 처리 시스템에서 움직임 정보에 대한 저장 공간을 감소시키는 방법 및 장치

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104363451B (zh) 2014-10-27 2019-01-25 华为技术有限公司 图像预测方法及相关装置
MX2017011558A (es) * 2015-03-10 2018-03-21 Huawei Tech Co Ltd Método de predicción de imagen y aparato relacionado.
CN109005407B (zh) * 2015-05-15 2023-09-01 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备
CN106331722B (zh) * 2015-07-03 2019-04-26 华为技术有限公司 图像预测方法和相关设备
CN105163116B (zh) 2015-08-29 2018-07-31 华为技术有限公司 图像预测的方法及设备
CN109274974B (zh) 2015-09-29 2022-02-11 华为技术有限公司 图像预测的方法及装置
WO2017069419A1 (ko) * 2015-10-22 2017-04-27 엘지전자 주식회사 비디오 코딩 시스템에서 인트라 예측 방법 및 장치
CN105681807B (zh) * 2016-01-06 2018-11-02 福州瑞芯微电子股份有限公司 一种基于h264协议的分像素运动矢量计算方法和装置
CN108432250A (zh) * 2016-01-07 2018-08-21 联发科技股份有限公司 用于视频编解码的仿射帧间预测的方法及装置
CN108702509B (zh) * 2016-02-25 2023-10-31 株式会社Kt 用于处理视频信号的方法和设备
RU2696551C1 (ru) 2016-03-15 2019-08-02 МедиаТек Инк. Способ и устройство для кодирования видео с компенсацией аффинного движения
WO2017156705A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Affine prediction for video coding
US10560712B2 (en) 2016-05-16 2020-02-11 Qualcomm Incorporated Affine motion prediction for video coding
EP3457694A4 (en) * 2016-05-24 2019-05-22 Huawei Technologies Co., Ltd. IMAGE FORECASTING METHOD AND ASSOCIATED DEVICE
US10448010B2 (en) * 2016-10-05 2019-10-15 Qualcomm Incorporated Motion vector prediction for affine motion models in video coding
CN108271023B (zh) 2017-01-04 2021-11-19 华为技术有限公司 图像预测方法和相关设备
CN107318024A (zh) * 2017-06-27 2017-11-03 北京奇艺世纪科技有限公司 基于运动场的视频编码方法及装置
US11877001B2 (en) 2017-10-10 2024-01-16 Qualcomm Incorporated Affine prediction in video coding
SG11202003260WA (en) 2017-11-07 2020-05-28 Huawei Tech Co Ltd Interpolation filter for an inter prediction apparatus and method for video coding
WO2019117659A1 (ko) * 2017-12-14 2019-06-20 엘지전자 주식회사 움직임 벡터 도출을 기반으로 하는 영상 코딩 방법 및 그 장치
US20190208211A1 (en) * 2018-01-04 2019-07-04 Qualcomm Incorporated Generated affine motion vectors
US11245919B2 (en) 2018-03-16 2022-02-08 Sony Corporation Image processing device and image processing method
BR112020023571A8 (pt) * 2018-05-23 2023-02-07 Mediatek Inc Método e aparelho de codificação de vídeo usando ponderação de cu bidirecional
WO2019244719A1 (en) * 2018-06-18 2019-12-26 Sharp Kabushiki Kaisha Systems and methods for performing affine motion compensation prediction for coding of video data
TWI746994B (zh) 2018-06-19 2021-11-21 大陸商北京字節跳動網絡技術有限公司 用於不同參考列表的不同精確度
KR102639425B1 (ko) * 2018-07-11 2024-02-21 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 인코더, 비디오 디코더, 및 대응하는 방법
KR20230151045A (ko) 2018-07-13 2023-10-31 엘지전자 주식회사 영상 코딩 시스템에서 어파인 움직임 예측에 기반한 영상 디코딩 방법 및 장치
BR122021006509A2 (pt) * 2018-08-09 2021-05-18 Lg Electronics Inc. método de decodificação de imagem com base na predição de movimento afim e dispositivo usando lista de candidatos à fusão afins no sistema de codificação de imagem
WO2020038232A1 (zh) * 2018-08-21 2020-02-27 华为技术有限公司 一种图像块的运动信息的预测方法及装置
TWI815967B (zh) * 2018-09-19 2023-09-21 大陸商北京字節跳動網絡技術有限公司 仿射模式編解碼的模式相關自適應調整運動矢量分辨率
CN110933426B (zh) * 2018-09-20 2022-03-01 杭州海康威视数字技术股份有限公司 一种解码、编码方法及其设备
WO2020063599A1 (zh) * 2018-09-24 2020-04-02 华为技术有限公司 图像预测方法、装置以及相应的编码器和解码器
CN111147850B (zh) 2018-11-02 2022-10-11 北京字节跳动网络技术有限公司 用于基于历史的运动矢量预测的表维护
CN117880493A (zh) * 2018-11-13 2024-04-12 北京字节跳动网络技术有限公司 用于空域运动候选列表的构建方法
US11024041B2 (en) * 2018-12-10 2021-06-01 Intel Corporation Depth and motion estimations in machine learning environments
CN111526362B (zh) * 2019-02-01 2023-12-29 华为技术有限公司 帧间预测方法和装置
CN111698506B (zh) 2019-03-11 2022-04-26 杭州海康威视数字技术股份有限公司 运动信息候选者列表构建方法、三角预测解码方法及装置
CN112204983A (zh) * 2019-09-24 2021-01-08 北京大学 一种视频处理方法、设备及存储介质
CN115769306A (zh) * 2020-05-01 2023-03-07 吉温成像有限公司 用于选择事件标志图像的系统和方法
US11936877B2 (en) * 2021-04-12 2024-03-19 Qualcomm Incorporated Template matching based affine prediction for video coding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110211640A1 (en) * 2008-10-31 2011-09-01 Sk Telecom. Co., Ltd. Method and apparatus for encoding motion vector, and method and apparatus for encoding/decoding image using same

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0181034B1 (ko) 1995-03-18 1999-05-01 배순훈 특징점 기반 움직임 추정을 이용한 움직임 벡터 검출 방법 및 장치
JP2798120B2 (ja) * 1995-08-04 1998-09-17 日本電気株式会社 動き補償フレーム間予測方法及び動き補償フレーム間予測装置
US5959673A (en) 1995-10-05 1999-09-28 Microsoft Corporation Transform coding of dense motion vector fields for frame and object based video coding applications
JPH104555A (ja) * 1996-06-17 1998-01-06 Oki Electric Ind Co Ltd 動きベクトル検出装置
JP2000350216A (ja) * 1999-06-09 2000-12-15 Matsushita Electric Ind Co Ltd 動き係数探索装置、及び動き係数探索方法
US6735249B1 (en) * 1999-08-11 2004-05-11 Nokia Corporation Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding
KR101042623B1 (ko) * 2004-11-17 2011-06-20 삼성전자주식회사 필드 가변분할방식을 이용한 디인터레이싱방법 및 장치
CN101350928A (zh) * 2008-07-29 2009-01-21 北京中星微电子有限公司 一种运动估计方法及装置
JP5401071B2 (ja) 2008-10-09 2014-01-29 株式会社Nttドコモ 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、動画像復号プログラム、動画像処理システムおよび動画像処理方法
US8406569B2 (en) * 2009-01-19 2013-03-26 Sharp Laboratories Of America, Inc. Methods and systems for enhanced dynamic range images and video from multiple exposures
CN101931803B (zh) 2009-06-26 2013-01-09 华为技术有限公司 视频图像运动信息获取方法、装置及设备、模板构造方法
US9131239B2 (en) * 2011-06-20 2015-09-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
WO2013028117A1 (en) 2011-08-19 2013-02-28 Telefonaktiebolaget L M Ericsson (Publ) Motion vector processing
CN103024378B (zh) * 2012-12-06 2016-04-13 浙江大学 一种视频编解码中运动信息导出方法及装置
US10057594B2 (en) * 2013-04-02 2018-08-21 Vid Scale, Inc. Enhanced temporal motion vector prediction for scalable video coding
CN104363451B (zh) * 2014-10-27 2019-01-25 华为技术有限公司 图像预测方法及相关装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110211640A1 (en) * 2008-10-31 2011-09-01 Sk Telecom. Co., Ltd. Method and apparatus for encoding motion vector, and method and apparatus for encoding/decoding image using same

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
J-L Lin et al: "Improved Advanced Motion Vector Prediction", JCTVC-D125, 15 January 2011. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019203504A1 (ko) * 2018-04-15 2019-10-24 엘지전자 주식회사 비디오 처리 시스템에서 움직임 정보에 대한 저장 공간을 감소시키는 방법 및 장치

Also Published As

Publication number Publication date
JP2017536002A (ja) 2017-11-30
US20170195685A1 (en) 2017-07-06
WO2016065873A1 (zh) 2016-05-06
KR20200011568A (ko) 2020-02-03
EP3177015B1 (en) 2024-04-03
KR102013771B1 (ko) 2019-08-23
KR102070982B1 (ko) 2020-01-29
EP3177015A4 (en) 2017-08-09
US11968386B2 (en) 2024-04-23
KR20190100435A (ko) 2019-08-28
KR20210049989A (ko) 2021-05-06
JP7313816B2 (ja) 2023-07-25
US20200244983A1 (en) 2020-07-30
KR102334151B1 (ko) 2021-12-02
US10440380B2 (en) 2019-10-08
JP2019041418A (ja) 2019-03-14
CN104363451B (zh) 2019-01-25
US11172217B2 (en) 2021-11-09
JP6490203B2 (ja) 2019-03-27
CN104363451A (zh) 2015-02-18
US20190289313A1 (en) 2019-09-19
US10623763B2 (en) 2020-04-14
KR102248254B1 (ko) 2021-05-06
BR112017007399A2 (pt) 2018-06-19
US20220053208A1 (en) 2022-02-17
EP3177015A1 (en) 2017-06-07

Similar Documents

Publication Publication Date Title
KR102013771B1 (ko) 이미지 예측 방법 및 관련 장치
JP7335315B2 (ja) 画像予測方法および関連装置
JP6689499B2 (ja) 画像予測方法および関連装置
JP7123863B2 (ja) 画像予測方法および関連装置
KR102005007B1 (ko) 픽쳐 예측 방법 및 관련 장치

Legal Events

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