KR102357575B1 - 비디오 이미지 인코딩 및 디코딩 방법, 장치 및 디바이스 - Google Patents

비디오 이미지 인코딩 및 디코딩 방법, 장치 및 디바이스 Download PDF

Info

Publication number
KR102357575B1
KR102357575B1 KR1020207006267A KR20207006267A KR102357575B1 KR 102357575 B1 KR102357575 B1 KR 102357575B1 KR 1020207006267 A KR1020207006267 A KR 1020207006267A KR 20207006267 A KR20207006267 A KR 20207006267A KR 102357575 B1 KR102357575 B1 KR 102357575B1
Authority
KR
South Korea
Prior art keywords
block
length
affine
motion compensated
image
Prior art date
Application number
KR1020207006267A
Other languages
English (en)
Other versions
KR20200033331A (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 KR20200033331A publication Critical patent/KR20200033331A/ko
Application granted granted Critical
Publication of KR102357575B1 publication Critical patent/KR102357575B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/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
    • H04N19/54Motion estimation other than block-based using feature points or meshes

Landscapes

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

Abstract

본 개시는 비디오 이미지 디코딩 방법을 제공하며, 이 방법에서 모션 벡터 차이, 모션 벡터 정밀도, 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 아핀 이미지 블록의 크기에 기초하여 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하고, 이 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 수평/수직 방향의 아핀 이미지 블록의 길이는 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이다.

Description

비디오 이미지 인코딩 및 디코딩 방법, 장치 및 디바이스
삭제
본 개시는 비디오 이미지 처리 분야에 관한 것이며, 특히 비디오 이미지 인코딩 방법, 비디오 이미지 디코딩 방법, 비디오 이미지 인코딩 장치, 비디오 이미지 디코딩 장치, 인코딩 장치 및 디코딩 장치에 관한 것이다.
인터넷 기술이 빠르게 발전하고 사람들의 자료와 영적 문화가 더욱 풍부해짐에 따라 비디오 응용 프로그램, 특히 고화질 비디오 응용 프로그램에 대한 인터넷 수요가 증가하고 있다. 그렇지만, 고화질 비디오에는 상당히 많은 양의 데이터가 있다. 제한된 대역폭으로 인터넷에서 고화질 비디오를 전송하려면 먼저 해결해야 할 문제는 고화질 비디오의 압축 및 인코딩이다. 현재, 비디오 코딩 표준의 개발에 전념하는 국제기구로는 2개의 국제기구: 국제 표준화기구(International Organization for Standardization, ISO로 약칭)/국제 전기 통신위원회(International Electrotechnical Commission, IEC로 약칭)의 동영상 전문가 그룹(Motion Picture Experts Group, MPEG로 약칭) 및 국제 전기 통신 연합-통신 표준화 부문(International Telecommunication Union-Telecommunication Standardization Sector, ITU-T로 약칭)의 비디오 코딩 전문가 그룹(Video Coding Experts Group, VCEG로 약칭)가 있다. 1986년에 설립된 MPEG는 멀티미디어 분야에서 저장, 방송 텔레비전, 인터넷 또는 무선 네트워크의 스트리밍 미디어 등에 주로 적용되는 관련 표준 개발에 특화되어 있다. ITU-T는 주로 비디오 폰, 화상 회의 또는 기타 응용 프로그램과 같은 실시간 비디오 통신 분야의 비디오 코딩 표준을 개발한다.
지난 수십 년간 다양한 응용 분야에 특화된 비디오 코딩 표준이 국제적으로 성공적으로 개발되어 왔으며 주로 비디오 컴팩트 디스크를 위한 MPEG-1 표준(Video Compact Disc, VCD로 약칭), 디지털 다용도 디스크(Digital Video Disc, DVD로 약칭) 및 디지털 비디오 방송(Digital Video Broadcasting, DVB로 약칭)을 위한 MPEG-2 표준 화상, H.261 표준, H.263 표준 및 H.264 표준, 모든 형태의 객체를 인코딩할 수 있는 MPEG-4 표준 및 최신 고효율 비디오 코딩(High Efficiency Video Coding, HEVC로 약칭) 표준을 포함한다.
현재 널리 사용되는 비디오 코딩 표준 H.264 및 최신 비디오 코딩 표준 HEVC에 따르면, 블록 기반 예측, 변환 및 엔트로피 인코딩과 같은 다양한 유형의 인코딩 동작은 이미지 블록을 기본 단위로 사용하여 수행된다. 이미지 블록은 정사각형 어레이 또는 직사각형 어레이일 수 있는 2차원 샘플링 포인트 어레이이다. 예를 들어, 4x4 크기의 이미지 블록은 총 4x4, 즉 16개의 샘플링 포인트를 포함하는 정사각형 샘플링 포인트 어레이로 간주될 수 있다. 도 1에 도시된 바와 같이, 이미지 블록은 B로 표시될 수 있다. 이미지 블록 신호는 이미지 블록 내의 샘플링 포인트의 샘플링 값이고,
Figure 112020022551696-pct00001
로 표현될 수 있으며, 여기서
Figure 112020022551696-pct00002
는 이미지 블록 내의 각 샘플링 포인트의 좌표를 나타낸다. 유사하게, 이미지는 또한 2차원 샘플링 포인트 어레이로서 표현될 수 있고, 이미지 블록에 사용된 방법과 유사한 방법을 사용하여 표시된다. 또한, 샘플링 포인트는 픽셀로 지칭될 수도 있고, 본 개시의 본 명세서에서 구별없이 사용될 것이다.
비디오 시퀀스는 프레임 단위로 배열된 이미지를 포함한다. 일반적으로 연속 이미지는 매우 짧은 시간 간격으로 생성되며 그 이미지는 약간 변경된다. 결과적으로 연속적인 이미지 사이에는 약간의 차이가 있다. 따라서, 현재 이미지와 참조 이미지 사이의 차이만이 그 연속적인 이미지 사이의 시간 상관에 기초하여 인코딩될 수 있다. 참조 이미지는 일반적으로 생성 시간이 현재 이미지의 생성 시간에 가까운 재구성된 인코딩된 이미지이다. 이러한 방식으로, 인코딩될 정보의 양이 감소되고, 신호 압축 효과가 달성된다. 비디오 코딩 기술에서, 이 유형의 방법은 인터-프레임 예측 코딩 기술(inter-frame prediction coding technology)로 지칭되며, 이 기술은 현재의 비디오 코딩 표준에서 널리 사용된다. 도 2는 인터-프레임 예측 인코딩 아키텍처를 도시한다. 일반적으로 비디오에서 각각의/각각의 이미지 프레임인 인코딩될 이미지가 입력되어 서로 겹치지 않는 이미지 블록으로 분할된다. 인코더는 모션 추정을 통해 이미지 블록의 모션 벡터를 획득하고, 인코더는 모션 보상을 통해 이미지 블록의 모션 벡터를 사용하여 이미지 블록의 모션 보상 예측 신호를 획득한다. 그런 다음, 모션 보상 예측 신호는 이미지 블록의 원래 신호로부터 감산되어 예측 잔차 신호(prediction residual signal)를 획득한다. 변환, 양자화 및 엔트로피 인코딩을 거친 후에, 예측 잔차 신호는 비트스트림에 기록된다. 인코딩 프로세스에서, 이미지 블록의 획득된 모션 보상 예측 신호가 더 정확하면, 획득된 예측 잔차 신호의 양이 더 작고, 인코딩될 필요가 있는 비트의 양이 더 작고, 이미지 블록의 압축률 더 높다.
모션 추정은 현재 이미지 블록
Figure 112020022500230-pct00003
를 사용하여 참조 이미지로부터 크기가 동일하고 현재 이미지 블록과 가장 일치하는 이미지 블록
Figure 112020022500230-pct00004
을 찾는 것이다. 공간에서의
Figure 112020022500230-pct00005
에 대한 이미지 블록
Figure 112020022500230-pct00006
의 위치 오프셋은 이미지 블록
Figure 112020022500230-pct00007
의 모션 벡터로 지칭된다. 모션 보상은 이미지 블록
Figure 112020022500230-pct00008
의 모션 벡터에 기초하여 참조 이미지로부터 예측 신호를 획득하는 프로세스이다. 획득된 신호를 모션 보상 예측 신호라고 한다.
디코더 측은 이미지 블록의 예측 잔차 신호에 대해 역양자화 및 역변환을 수행하여 재구성된 잔차 신호를 획득하고, 그런 다음 이미지 블록의 모션 벡터에 기초한 모션 보상 예측을 통해 참조 이미지로부터 모션 보상 예측 신호를 획득하고, 모션 보상 예측 신호 및 이미지 블록의 재구성된 잔차 신호를 가산함으로써 이미지 블록의 재구성된 신호를 획득할 수 있다.
도 3은 이미지 블록의 분할 및 이미지 블록과 모션 벡터 사이의 관계를 도시한다. 순간
Figure 112020022500230-pct00009
에서의 이미지
Figure 112020022500230-pct00010
는 크기가 다르고 서로 겹치지 않는 이미지 블록으로 분할된다. 각각의 이미지 블록에서의 화살표는 인코더 측에 의해 결정된 모션 벡터를 개략적으로 나타내고, 길이 및 방향은 각각 현재 이미지 블록의 모션 강도 및 모션 방향을 나타낸다. 각각의 이미지 블록의 모션 벡터는 이미지 블록의 모든 샘플링 포인트에 적용된다. 구체적으로, 각각의 이미지 블록의 예측 신호는 모션 벡터에 의해 표현된 위치 오프셋에 기초하여 이미지 블록의 모든 샘플링 포인트에 대한 특정 참조 이미지로부터 획득된다.
블록 구조에 기초한 모션 보상 예측은 소프트웨어 및 하드웨어의 구현에 친근하고, 복잡성이 낮으며, 컴퓨팅 자원이 제한될 때 비교적 우수한 압축 효율을 제공할 수 있다. 그러나 단점도 있다. 예를 들어, 이 방법에서는 이미지 블록에서 모든 픽셀의 모션을 나타내는 데 하나의 모션 벡터가 사용된다. 모든 픽셀이 동일한 운동 방향 및 동일한 크기를 가질 때, 예를 들어 병진 운동에서, 이 방법은 모든 픽셀의 운동을 정확하게 나타내는 데 사용될 수 있다. 이미지 블록의 픽셀이 상이한 모션 방향 또는 크기를 갖는 경우, 예를 들어 스케일링 및 회전과 같은 모션에서, 이 방법은 모든 픽셀의 모션을 정확하게 나타내는 데 사용될 수 없다. 결과적으로, 정확한 예측 신호를 얻을 수 없고 압축 성능이 저하된다.
기존의 모션 보상 예측 기술의 단점을 극복하기 위해 선형적으로 변화하는 모션 벡터 필드에 기초한 모션 보상 예측 기술이 제안된다. 모션 벡터 필드는 이미지 블록의 모션 벡터 필드이다. 이미지 블록은 특정 시나리오에서 더 작은 서브 유닛으로 분할된다. 서브 유닛은 픽셀만큼 작을 수 있고 원래의 블록만큼 클 수 있다. 각 서브 유닛에는 모션 벡터가 있다. 이미지 블록 내의 모든 서브 유닛의 모션 벡터는 이미지 블록의 모션 벡터 필드를 형성한다. 이미지 블록의 모션 벡터 필드는 선형 또는 비선형적으로 변할 수 있다. 이미지 블록의 모션 벡터 필드가 선형으로 변한다는 것은 이미지 블록에서 인접한 서브 유닛의 모션 벡터가 고르게 변한다는 것을 의미한다. 이미지 블록에서 인접 유닛의 모션 벡터가 불균일하게 변하면, 이미지 블록의 모션 벡터 필드는 비선형적으로 변경된다. 이 사양은 주로 선형적으로 변하는 모션 벡터 필드에 기반한 모션 보상 예측 기술에 초점을 맞춘다. 제목이 변형 가능한 블록의 모션 벡터 유도(Motion Vector Derivation of Deformable Block)인 문서에서(이미지 처리(ICIP), pp. 1549-1522, 2012년 9월 30일부터 2012년 9월 30일까지 2012년 제19회 IEEE 국제회의), Na Zhang, Xiaopeng Fan, Debin Zhao 및 Wen Gao가 제안한 것처럼 이미지 블록 내의 4개의 정점이 제어 포인트로 사용되며 4개의 제어 포인트의 모션 벡터에 대해 이중 선형 보간법이 수행되어 이미지 블록에서 각 4x4 단위의 벡터 모션을 얻는다. 이미지 블록에서 4개의 정점의 모션 벡터는 주변 이미지 블록의 모션 벡터에 기초하여 얻어지고, 모든 4x4 유닛의 모션 벡터는 이미지 블록의 모션 벡터 필드를 형성한다. 그런 다음, 모션 벡터 필드에 기초하여 참조 블록으로부터 이미지 블록의 모션 보상 예측 신호를 얻는다. 모션 벡터 필드에 기초한 모션 보상 예측 기술에서, 독립적인 모션 벡터를 갖는 유닛의 크기가 감소되고, 회전 및 스케일링과 같은 비 회전 모션이 보다 정확하게 표시될 수 있고, 보다 정확한 모션 보상 예측 신호가 획득될 수 있다. 전술한 모션 벡터 필드는 제어 포인트의 모션 벡터에 대해 이중 선형 보간을 수행함으로써 획득되고, 모션 벡터 필드는 이중 선형 모델을 만족시킨다. 이중 선형 보간은 수학적 보간법이다. 도 4를 참조하여 구체적인 보간법을 설명하면 다음과 같다:
Figure 112020022500230-pct00011
에서 함수
Figure 112020022500230-pct00012
의 값이 계산되어야 하고, 4개의 포인트
Figure 112020022500230-pct00013
,
Figure 112020022500230-pct00014
,
Figure 112020022500230-pct00015
Figure 112020022500230-pct00016
에서 함수
Figure 112020022500230-pct00017
의 값은 이미 알려져 있다. 먼저, 선형 보간이 x의 방향으로 수행되어 다음을 얻는다:
Figure 112020022500230-pct00018
그런 다음, 선형 보간이 y의 방향으로 수행되어 다음을 얻는다:
Figure 112020022500230-pct00019
포인트
Figure 112020022500230-pct00020
에서의 값은 식 (1)에서 얻은 결과를 식 (2)에 대입하여 얻을 수 있다. 이미지 블록 내의 모든 포인트의 모션 벡터는 보간법을 사용하여 제어 포인트의 모션 벡터에 기초하여 획득될 수 있다.
이 방법에서, 제어 포인트의 모션 벡터는 주변 이미지 블록의 모션 벡터에 기초하여 선택되고, 선택된 모션 벡터는 부정확할 수 있다. 제어 포인트의 모션 벡터가 모션 추정 및 검색을 통해 획득되면, 제어 포인트의 모션 벡터는 비트스트림에 기록될 필요가 있다. 이 경우, 이미지 블록의 모션 벡터 필드를 나타내기 위해보다 효율적인 방법, 예를 들어 아핀 변환 모델이 사용된다. 따라서, 아핀 변환에 기초한 모션 보상 예측 기술이 제안 된다.
아핀 변환은 두 공간 사이의 맵핑 관계를 나타내며 일반적인 아핀 변환에는 회전, 크기 조정 및 변환이 포함된다. 이미지 블록의 모션 벡터 필드는 아핀 변환 모델을 사용하여 획득된 모션 벡터 필드가 선형으로 변하고, 모션 벡터 필드는 아핀 변환을 만족시킨다. 공통의 6-파라미터 아핀 변환 모델은 전술한 3개의 모션을 나타낼 수 있다. 구체적으로, 식 (3)에 도시된 바와 같이,
Figure 112020022551696-pct00021
는 현재 이미지 내의 아핀 이미지 블록의 픽셀
Figure 112020022551696-pct00022
의 좌표이고,
Figure 112020022551696-pct00023
는 참조 이미지에 있으면서 픽셀
Figure 112020022551696-pct00024
와 일치하는 픽셀
Figure 112020022551696-pct00025
의 좌표이고,
Figure 112020022551696-pct00026
는 아핀 변환 파라미터이다. 아핀 변환 파라미터가 알려지면, 참조 이미지에서 픽셀 P=
Figure 112020022551696-pct00027
의 위치
Figure 112020022551696-pct00028
가 계산될 수 있고, 따라서 참조 이미지로부터 픽셀의 예측 신호가 획득될 수 있다.
Figure 112020022500230-pct00029
아핀 파라미터는 일반적으로 이미지 블록 내의 일부 픽셀의 모션 벡터를 기반으로 계산된다. 모션 벡터는 식 (4)로 표현될 수 있다:
Figure 112020022500230-pct00030
식 (3)을 식 (4)에 대입하여 다음을 얻는다:
Figure 112020022500230-pct00031
아핀 변환 파라미터의 특정 값은 공지된 모션 벡터의 복수의 그룹, 예를 들어 공지된 모션 벡터의 3개의 그룹을 식 (5)에 대입함으로써 얻을 수 있다. 따라서, 이미지 블록 내의 모든 포인트의 모션 벡터는 식 (3) 및 식 (4)를 사용하여 계산될 수 있다. 실제로, 일반적으로, 이미지 블록에서 코너 포인트(제어 포인트)의 모션 벡터는 먼저 모션 추정을 통해 획득되고, 그런 다음 코너 포인트의 모션 벡터 에 기초하여 아핀 변환 파라미터가 계산되고, 이미지 블록 내의 및 모든 픽셀의 모션 벡터가 계산된다. 코너 포인트의 모션 벡터가 도 5a 및 도 5b에 도시되어 있다. 도 5a는 이미지 블록 X를 나타낸다. 이미지 블록의 폭은 w이고 높이는 h이다. 좌측 상단 코너 포인트의 좌표는
Figure 112020022500230-pct00032
이고, 모션 벡터는
Figure 112020022500230-pct00033
이다. 우측 상단 코너 포인트의 좌표는
Figure 112020022500230-pct00034
이고, 모션 벡터는
Figure 112020022500230-pct00035
이다. 좌측 하단 코너 포인트의 좌표는
Figure 112020022500230-pct00036
이고, 모션 벡터는
Figure 112020022500230-pct00037
이다. 이하의 6-파라미터 아핀 변환 모델은
Figure 112020022500230-pct00038
,
Figure 112020022500230-pct00039
,
Figure 112020022500230-pct00040
를 식 (5)에 대입함으로써 획득될 수 있다:
Figure 112020022500230-pct00041
이미지 블록에서 3개의 정점의 모션 벡터는 상이할 수 있다. 도 5b에 도시된 바와 같이, 참조 화상에서의 이미지 블록의 맵핑 관계는 파선으로 표시되어 있다. 이미지 블록 내의 모든 포인트의 모션 벡터가 계산된 후, 이미지 블록 내의 모든 포인트의 모션 보상 예측 신호는 모션 보상 예측을 통해 획득된다.
전술한 내용에서, 6-파라미터 아핀 변환 모델이 예로서 사용된다. 그렇지만, 아핀 변환 모델은 6-파라미터 모델로 제한되지 않으며, 식 (7) 및 (8)에 도시된 4-파라미터 아핀 변환 모델, 식 (9)에 도시된 2-파라미터 스케일링 모델 등일 수 있다. 모션 보상 예측을 위해 이미지 블록에 대해 4-파라미터 아핀 변환 모델이 선택되면, 아핀 모델은 4개의 알려지지 않은 파라미터를 가지며, 2개의 모션 벡터 그룹을 사용하여 모델의 파라미터를 얻을 수 있다. 2개 그룹의 모션 벡터는 이미지 블록에서 2개의 코너 포인트의 모션 벡터일 수 있거나, 이미지 블록에서 2개의 포인트의 모션 벡터일 수 있다.
Figure 112020022500230-pct00042
Figure 112020022500230-pct00043
Figure 112020022500230-pct00044
식 (3)을 식 (7)에 대입하여 다음을 얻는다:
Figure 112020022500230-pct00045
좌측 상단 코너 포인트의 좌표는
Figure 112020022500230-pct00046
이고, 모션 벡터는
Figure 112020022500230-pct00047
이다. 우측 상단 코너 포인트의 좌표는
Figure 112020022500230-pct00048
이고, 모션 벡터는
Figure 112020022500230-pct00049
이다. 코너 포인트 모두의 모션 벡터를 식 (10)에 대입하고, 좌측 상단 코너 포인트의 좌표 및 우측 상단 코너 포인트의 좌표가 제어 포인트로 사용되는 모션 모델 식이 다음과 같이 획득된다:
Figure 112020022500230-pct00050
좌측 상단 코너 포인트의 좌표는
Figure 112020022500230-pct00051
이고, 모션 벡터는
Figure 112020022500230-pct00052
이다. 좌측 하단 코너 포인트의 좌표는
Figure 112020022500230-pct00053
이고, 모션 벡터는
Figure 112020022500230-pct00054
이다. 코너 포인트 모두의 모션 벡터를 식 (10)에 대입하고, 좌측 상단 코너 포인트의 좌표 및 좌측 하단 코너 포인트의 좌표가 제어 포인트로 사용되는 모션 모델 식이 다음과 같이 획득된다:
Figure 112020022500230-pct00055
최신 비디오 코딩 표준 HEVC와 비교하여 회전 및 스케일링 모션을 포함하는 비디오 프레임/이미지 시퀀스에 대해 선형으로 변화하는 모션 벡터 필드를 기반으로 하는 모션 보상 예측 기술은 인코딩 성능을 크게 향상시킬 수 있다. 선형적으로 변화하는 전술한 모션 벡터 필드는 아핀 변환 모델을 사용하여 생성된 모션 벡터 필드와 이중 선형 모델을 사용하여 생성된 모션 벡터 필드를 포함한다. 아핀 변환에 기초한 모션 보상 예측 기술이 예로서 사용된다. 이미지 블록의 아핀 변환 파라미터가 획득된 후, 이미지 블록의 각 포인트의 모션 벡터가 계산될 필요가 있고, 각각의 포인트의 모션 벡터에 기초하여 모션 보상 예측이 수행되어, 각각의 포인트의 모션 보상 예측 신호를 획득한다. 이미지 블록 내의 모든 픽셀의 모션 벡터가 상이할 수 있기 때문에, 모션 벡터에 기초하여 픽셀에 대해 상이한 동작이 수행될 필요가 있다. 픽셀 기반 모션 보상 예측은 매우 복잡하다. 인코딩/디코딩 복잡성을 감소시키기 위해, 관련 기술에서, 이미지 블록은 이미지 서브-블록으로 더 분할되도록 시도되고, 각각의 이미지 서브-블록의 모션 벡터가 계산된 다음, 각각의 이미지 서브의 모션 보상 예측 신호 블록이 얻어진다.
그렇지만, 관련 기술에서, 이미지 서브-블록의 크기는 고정되어 있다. 크기가 너무 작은 이미지 서브-블록은 비교적 높은 인코딩/디코딩 복잡성을 초래하고, 크기가 너무 큰 이미지 서브-블록은 인코딩/디코딩 성능을 저하시킨다. 결과적으로, 그러한 효율적인 인코딩 방법의 적용은 실제로 크게 제한된다.
본 개시는 비디오 이미지 디코딩 방법, 비디오 이미지 인코딩 방법, 디코딩 장치, 인코딩 장치, 디코딩 장치 및 인코딩 장치를 제공한다. 적절한 크기의 이미지 서브-블록이 선택되므로, 전체 이미지 블록은 처리를 위해 동일한 크기를 갖는 복수의 이미지 서브-블록으로 분할되어, 인코딩/디코딩 복잡성을 감소시키고, 인코딩/디코딩 성능을 향상시킨다.
제1 관점에 따라, 비디오 이미지 디코딩 방법이 제공되며, 상기 방법은: 아핀 이미지 블록(affine image block)의 모션 벡터 차이를 결정하는 단계; 상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하는 단계; 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및 상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 디코딩 처리를 수행하는 단계를 포함한다.
본 개시의 제1 관점에서 제공되는 비디오 이미지 디코딩 방법에서, 아핀 모션 보상 이미지 서브-블록의 크기는 결정된 2개의 파라미터, 즉 모션 벡터 차이 및 모션 벡터 정밀도에 기초하여 적응적으로 결정되므로, 아핀 이미지 블록 내의 제어 포인트 사이의 거리 및 아핀 이미지 블록의 크기와 조합하여, 아핀 이미지 블록이 크기가 동일한 복수의 아핀 모션 보상 이미지 서브-블록들로 분할될 수 있다. 이것은 디코더 측의 복잡성을 크게 줄이고 디코딩 효율을 향상시킬 수 있다.
본 개시의 제1 관점에 기초하여, 아핀 모션 보상 이미지 서브-블록의 크기를 결정 및 조정하는 프로세스는 구체적으로: 모션 벡터 차이의 제1 성분/제2 성분에 대한 모션 벡터 정밀도의 비율에 기초하여 제1 수평/수직 거리를 비례적으로 조정하여, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 획득하고; 그리고 상기 수평/수직 방향으로 상기 아핀 이미지 블록의 길이가 상기 수평/수직 방향으로 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하고, 상기 수평/수직 방향의 아핀 이미지 블록의 길이가 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 수평/수직 방향의 아핀 이미지 블록의 길이는 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계이다. 이 특정 구현에서, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 모션 벡터 정밀도와 모션 벡터 차이의 제1 성분/제2 성분 사이의 비례 관계에 기초하여 제어 포인트 사이의 제1 수평/수직 거리를 조정함으로써 획득되므로, 아핀 모션 보상 이미지 서브-블록의 크기는 아핀 이미지 블록의 모션 벡터 정밀도와 일치할 수 있다. 이것은 디코딩 품질을 보장하고 디코딩 복잡성을 감소시킨다.
본 개시의 제1 관점에 기초하여, 상기 수평/수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는 구체적으로: 하나 이상의 단위 길이만큼 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하고, 즉 증가/감소시키고, 그런 다음 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 전술한 솔루션을 주기적으로 수행하는 것이다. 단위 길이는 일반적으로 하나의 단위 픽셀이다. 구체적으로, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 1만큼 조정되고, 즉 증가/감소된다. 또한, 전술한 조정은 고정된 스텝 크기만큼 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하고, 즉 증가/감소시킬 수 있고, 스텝 크기는 조정 값, 즉 주기마다 아핀 모션 보상 이미지 서브의 길이를 조정하는 데 사용되는 기본 단위이다. 스텝 크기는 임의의 값일 수 있고, 일반적으로 전술한 하나의 단위 픽셀이거나, 또는 2.5 단위 픽셀과 같은 다른 값일 수 있다. 선택적으로, 전술한 조정에 사용된 스텝 크기/조정 값은 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이(즉, 조정되지 않은 길이)의 패리티에 따라 변할 수 있다. 예를 들어, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 홀수인 경우, 홀수 스텝 크기가 선택된다. 예를 들어, 하나의 단위 길이와 같은 홀수 수량의 단위 길이가 조정을 위한 단계 크기로 사용된다. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 짝수인 경우, 짝수 단계 크기가 선택된다. 예를 들어, 짝수의 단위 길이가 단계 크기로 사용된다. 이 구현에서, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 수평/수직 방향으로 아핀 이미지 블록의 길이를 나눌 수 있는 값에 빠르게 근사할 수 있고, 복잡성이 더욱 줄어든다.
효율을 개선하고 동작 시간을 감소시키기 위해, 본 개시의 제1 관점에서 제공되는 디코딩 방법에서, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 수평/수직 방향의 아핀 이미지 블록의 길이를 나눌 수 있는 가장 근접한 값으로 조정될 수 있다. 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이와 수평/수직 방향의 아핀 이미지 블록의 길이를 나눌 수 있는 2개의 인접한 값 사이의 차이가 동일하면, 조정은 인코더 측 및 디코더 측의 요구 사항에 따라 선택될 수 있다. 예를 들어, 낮은 레이턴시가 필요한 경우, 조정, 즉 증가가 선택될 수 있다. 고품질이 필요한 경우 조정, 즉 감소가 선택된다.
수평/수직 방향의 아핀 이미지 블록의 길이가 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아닌 것으로 결정될 때, 알고리즘을 더 단순화하기 위해, 동일한 표가 인코더 측과 디코더 측에 개별적으로 설정될 수 있고, 수평/수직 방향의 아핀 이미지 블록의 가능한 최대 길이는 예를 들어 허용된 최소 제수(minimum divisor)를 시작 값, 예를 들어 2N으로 사용함으로써 복수의 간격으로 분할된다. 간격 범위는 2N+i이며, 여기서
Figure 112020022500230-pct00056
이고, Wmax는 수평/수직 방향의 아핀 이미지 블록의 가능한 최대 길이이다. 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 감소하는 간격이 결정되고, 수평/수직 방향으로 떨어지는 아핀 모션 보상 이미지 서브-블록의 길이 내에서의 간격의 하한값 또는 상한값은 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 최종적으로 결정된 길이로서 사용된다. 하한값 또는 상한값을 얻기 위한 규칙에 대해서는 인코더 측과 디코더 측 사이의 합의를 참조한다. 근사 간격의 상한값 또는 하한값은 비트스트림을 사용하여 명시적으로 지시될 수 있거나 반올림 방식 (round-off manner)으로 선택될 수 있다. 전술한 표를 사용하여, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 최종 길이는 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이에 기초하여 테이블 룩업을 통해 결정될 수 있다. 따라서 시스템 복잡성이 줄어들고 계산 시간이 줄어든다.
선택적으로, 솔루션에서의 계산 복잡성을 더 감소시키기 위해, 본 개시의 제1 관점에서 제공되는 디코딩 방법에서, 수평/수직 방향의 아핀 이미지 블록의 길이가 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배일 뿐만 아니라, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 계산을 용이하게 하는 미리 설정된 길이 S의 정수배인지도 결정될 필요가 있다. 구체적으로, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 다음 두 가지 조건을 만족하는지가 결정될 필요가 있다:
(1) 수평/수직 방향의 아핀 이미지 블록의 길이는 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고; 그리고
(2) 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 미리 설정된 길이 S의 정수배이다.
수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 두 조건을 만족하지 않으면, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록이 조건 (1)과 조건 (2)를 만족시키도록 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 조정된다. 구체적으로, 수평/수직 방향의 아핀 이미지 블록의 길이는 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배이고, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이는 미리 설정된 길이의 정수배이다. 미리 설정된 길이 S는 일반적으로 4이거나, 8, 16 또는 32와 같은 값일 수 있거나, S는 2n과 같고, 여기서 n은 0 또는 양의 정수이다. S의 값은 아핀 이미지 블록의 크기보다 크지 않아야 한다는 것에 유의해야 한다. 이 솔루션은 모든 모양의 아핀 이미지 블록에 적용할 수 있다. 상기 아핀 이미지 블록이 쿼드트리(Quad Tree) 규칙에 따라 분할되거나, 아핀 이미지 블록의 크기가 2Nx2N, 즉 정사각형 형태인 경우, 전술한 결정 조건 (1) 및 (2)가 충족되면 다른 조건을 충족시킬 수 있다. 따라서 결정 조건 중 하나만을 활성화/적용해야 한다. 조건 (1) 및 (2)가 충족되는지를 결정하기 위한 시퀀스 및 결정 결과에 기초하여 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하기 위한 시퀀스는 무작위로 교환될 수 있다.
본 개시의 제1 관점에서 제공되는 디코딩 방법에서, 아핀 모션 보상 이미지 서브-블록의 크기가 유효하지 않은 경우, 즉 허용된 최소 크기보다 작지만 크기가 이핀 이미지 블록의 크기보다 큰 경우를 피하기 위해, 진폭 제한 동작은 전술한 방식으로 결정된 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이에 대해 선택되고 수행될 수 있다. 구체적으로는, 수평/수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 하한값 Tm/Tn에서 상한값 W/H까지의 범위가 되도록 비교 방식이 사용된다. Tm/Tn은 미리 설정된 값이며 일반적으로 4이며 W/H는 수평/수직 방향의 아핀 이미지 블록의 길이이다.
또한, 본 개시의 제1 관점에서 제공되는 디코딩 방법은 3개의 제어 포인트에 기초한 아핀 변환 모델 및 2개의 제어 포인트에 기초한 아핀 변환 모델에 적용 가능하다. 3개의 제어 포인트에 기초한 아핀 변환 모델에서, 수직 방향 및 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 독립적으로 얻어지고 독립적으로 조정될 필요가 있다. 이에 상응해서, 2개의 제어 포인트에 기초한 아핀 변환 모델에서는, 수평 방향과 수직 방향 중 하나의 방향에서의 아핀 모션 보상 화상 서브-블록의 길이만이 그리고 독립적으로 얻어질 필요가 있는 길이만이 얻어지고, 다른 방향의 길이는 더 추론되며; 두 방향에서의 길이는 독립적으로 조정되어야 한다. 아핀 이미지 블록의 크기가 정사각형의 2Nx2N인 경우, 수평 방향의 아핀 이미지 블록의 길이와 수직 방향의 아핀 이미지 블록의 길이가 동일하기 때문에, 수평 방향의 아핀 이미지 블록의 길이와 수직 방향의 아핀 이미지 블록의 길이 중 하나만이 결정되고 조정되어야 한다.
제2 관점에 따라, 비디오 이미지 인코딩 방법이 제공되며, 상기 방법은 주로: 아핀 이미지 블록의 모션 벡터 차이를 결정하는 단계; 상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하는 단계; 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및 상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 인코딩 처리를 수행하는 단계를 포함한다.
본 개시의 제2 관점에 제공된 비디오 이미지 인코딩 방법에서, 아핀 모션 보상 이미지 서브-블록의 크기는 아핀 이미지 블록이 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록들로 분할될 수 있도록, 결정된 2개의 파라미터, 즉 모션 벡터 차이 및 모션 벡터 정밀도에 기초하여 그리고 아핀 이미지 블록 내의 제어 포인트 사이의 거리 및 아핀 이미지 블록의 크기와 조합하여 적응적으로 결정된다. 이를 통해 인코더 측의 복잡성을 크게 줄이고 인코딩 효율성을 향상시킬 수 있다. 본 개시의 제2 관점에서의 비디오 이미지 인코딩 방법은 본 개시의 제1 관점에서의 비디오 이미지 디코딩 방법과 같이, 동일한 핵심 단계, 즉 아핀 모션 보상 이미지 서브-블록의 크기를 결정하고 아핀 모션 보상 이미지 서브-블록의 크기를 조정하는 단계를 포함하지만, 다른 마지막 단계를 포함한다. 따라서, 제1 관점의 비디오 이미지 디코딩 방법의 솔루션은 본 개시의 제2 관점의 비디오 이미지 인코딩 방법에도 적용 가능하다. 자세한 내용에 대해서는, 제1 관점에서의 비디오 이미지 디코딩 방법의 전술한 설명을 참조한다.
제3 관점에 따라, 비디오 이미지 디코딩 장치가 제공되며, 상기 장치는: 아핀 이미지 블록(affine image block)의 모션 벡터 차이를 결정하도록 구성되어 있는 모션 벡터 차이 결정 모듈; 아핀 이미지 블록의 모션 벡터 정밀도를 결정하도록 구성되어 있는 모션 벡터 정밀도 결정 모듈; 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하도록 구성되어 있는 모션 서브-블록 크기 결정 모듈 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및 상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 디코딩 처리를 수행하도록 구성되어 있는 디코딩 모듈을 포함을 포함한다.
본 개시의 제3 관점에 제공된 비디오 이미지 디코딩 장치는 본 개시의 제1 관점에 제공된 비디오 이미지 디코딩 방법에 대응하고, 본 개시의 제1 관점에 제공된 비디오 이미지 디코딩 방법의 모든 단계를 구현하는 기능을 가지며, 동일한 기술적 효과를 달성할 수 있으며, 즉 디코더 측의 복잡성을 크게 줄이고 디코딩 효율을 향상시킬 수 있다.
제4 관점에 따라, 비디오 이미지 인코딩 장치가 제공되며, 상기 장치는: 아핀 이미지 블록의 모션 벡터 차이를 결정하도록 구성되어 있는 모션 벡터 차이 결정 모듈; 상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하도록 구성되어 있는 모션 벡터 정밀도 결정 모듈; 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하도록 구성되어 있는 이미지 서브-블록 크기 결정 모듈 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및 상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 인코딩 처리를 수행하도록 구성되어 있는 인코딩 모듈을 포함한다.
본 개시의 제4 관점에 제공된 비디오 이미지 인코딩 장치는 본 개시의 제2 관점에 제공된 비디오 이미지 인코딩 방법에 대응하고, 본 개시의 제2 관점에 제공된 비디오 이미지 인코딩 방법의 모든 단계를 구현하는 기능을 가지며, 동일한 기술적 효과를 달성할 수 있으며, 즉 인코더 측의 복잡성을 크게 줄이고 인코딩 효율을 향상시킬 수 있다.
제5 관점에 따라, 비디오 이미지 디코딩 장치가 제공되며, 상기 디코딩 장치는 프로세서 및 비휘발성 메모리를 포함하며, 상기 프로세서는 상기 메모리에 저장되어 있는 프로그램 코드를 불러내어 본 개시의 제1 관점에 제공된 디코딩 방법을 실행한다.
제6 관점에 따라, 비디오 이미지 인코딩 장치가 제공되며, 상기 인코딩 장치는 프로세서 및 비휘발성 메모리를 포함하며, 상기 프로세서는 상기 메모리에 저장되어 있는 프로그램 코드를 불러내어 제2 관점에 제공된 인코딩 방법을 실행한다.
전술한 기술적 솔루션에 기초하여, 본 개시의 실시예에서의 비디오 이미지 인코딩 방법, 비디오 이미지 디코딩 방법, 인코딩 장치, 디코딩 장치, 인코딩 장치 및 디코딩 장치에 따라, 아핀 모션 보상 이미지 서브-블록의 크기는 아핀 이미지 블록이 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록으로 분할될 수 있도록, 결정된 2개의 파라미터, 즉 모션 벡터 차이 및 모션 벡터 정밀도에 기초하여, 그리고 아핀 이미지 블록에서의 제어 포인트 사이의 거리와 아핀의 크기와 조합하여 적응적으로 결정된다. 이는 인코딩/디코딩 복잡성을 줄이고 인코딩/디코딩 효율성을 향상시킨다.
본 개시의 실시예의 기술적 솔루션을 더 명확하게 설명하기 위해, 이하에서는 본 개시의 실시예를 설명하는 데 필요한 첨부된 도면에 대해 간략하게 설명한다. 당연히, 이하의 실시예의 첨부된 도면은 본 개시의 일부의 실시예에 지나지 않으며, 당업자라면 창조적 노력 없이 첨부된 도면으로부터 다른 도면을 도출해낼 수 있을 것이다.
도 1은 비디오 이미지 인코딩 프로세스에서의 이미지 블록의 개략도이다.
도 2는 기본 비디오 이미지 인코딩 절차의 개략도이다.
도 3은 비디오 이미지 인코딩 프로세스에서 이미지 블록의 분할 및 이미지 블록과 모션 벡터 사이의 관계의 개략도이다.
도 4는 이중 선형 보간법을 통해 이미지 블록의 모션 벡터 필드를 획득하는 개략도이다.
도 5a 및 도 5b는 아핀 변환 모델을 사용하여 이미지 블록의 모션 벡터 필드를 획득하는 개략도이다.
도 6은 본 개시의 실시예에 따른 디코딩 방법에 사용되는 비디오 디코더의 개략적인 프레임워크 다이어그램이다.
도 7은 본 개시의 실시예에 따른 비디오 이미지 디코딩 방법의 개략적인 흐름도이다.
도 8은 본 개시의 실시예에 따른 아핀 이미지 블록 및 제어 포인트의 개략도이다.
도 9는 본 개시의 실시예에 따른 아핀 이미지 블록 및 제어 포인트의 다른 개략도이다.
도 10은 본 개시의 실시예에 따른 아핀 이미지 블록에서 3개의 비 중첩 픽셀의 개략도이다.
도 11은 본 개시의 실시예에 따른 아핀 이미지 블록의 또 다른 개략도이다.
도 12는 본 개시의 실시예에 따른 비디오 이미지 디코딩 방법의 다른 개략적인 흐름도이다.
도 13은 본 개시의 실시예에 따른 비디오 이미지 디코딩 방법의 또 다른 개략적인 흐름도이다.
도 14는 본 개시의 실시예에 따른 비디오 이미지 인코딩 방법의 개략적인 흐름도이다.
도 15는 본 개시의 실시예에 따른 비디오 이미지 인코딩 방법의 다른 개략적인 흐름도이다.
도 16은 본 개시의 실시예에 따른 비디오 이미지 인코딩 방법의 또 다른 개략적인 흐름도이다.
도 17은 본 개시의 실시예에 따른 디코딩 장치의 개략적인 블록도이다.
도 18은 본 개시의 실시예에 따른 인코딩 장치의 개략적인 블록도이다.
도 19는 본 개시의 실시예에 따른 디코딩 장치의 개략적인 블록도이다.
도 20은 본 개시의 실시예에 따른 인코딩 장치의 개략적인 블록도이다.
본 개시의 목적은 아핀 변환에 기초하여 모션 보상 예측 성능을 유지하면서 인코딩/디코딩 복잡성을 감소시켜, 방법이 효과적으로 실행 가능하도록 하는 것이다. 본 명세서에서, 아핀 변환 파라미터를 독립적으로 갖는 이미지 블록을 아핀 이미지 블록, 즉 아핀 블록이라고 한다. 아핀 이미지 블록으로부터 분할을 통해 획득되고 모션 보상 예측에 사용되는 이미지 서브-블록은 아핀 모션 보상(Affine Motion Compensation, "Affine-MC"로 약칭) 서브-이미지로 지칭되며, affine-MC 블록으로 표시된다. 본 개시에서 제공되는 기술적 솔루션은 인코딩/디코딩 요건에 따라 아핀 블록을 동일한 크기의 복수의 아핀-MC 블록으로 적응적으로 분할하는 것이다. 특정 방법은 아핀 블록의 모션 벡터 정밀도, 아핀 블록의 모션 벡터 및 아핀 블록의 제어 포인트 사이의 거리, 아핀 블록을 요구 사항을 충족시키는 아핀-MC 블록으로 적응적으로 분할하는 것이다.
특정 실시예를 사용함으로써 본 개시의 솔루션을 설명하기 위해 아래의 예로서 디코더 측이 사용된다.
디코더 측에서, 디코더는 일반적으로 디코딩 방법을 구현하는 데 사용되며, 인코딩된 비디오 비트스트림을 디코딩 및 재구성한다. 디코더의 기본 논리 구조가 도 6에 도시되어 있다. 비디오 디코더(60)는 엔트로피 디코딩 유닛(650), 예측 프로세싱 유닛(652), 역양자화 유닛(654), 역변환 프로세싱 유닛(656), 재구성 유닛(658), 필터 유닛(659) 및 디코딩된 이미지 버퍼(660)를 포함한다. 프로세싱 유닛(652)은 모션 보상 유닛(662) 및 인트라 프레임 예측 프로세싱 유닛(64)을 포함한다. 엔트로피 디코딩 유닛(650)은 정규 CABAC 인코딩/디코딩 엔진(666) 및 바이패스 인코딩/디코딩 엔진(668)을 포함한다. 더 많거나 더 적거나 다른 기능 구성 요소를 포함할 수 있다.
비디오 디코더(60)의 기본적인 작업 프로세스는 다음과 같다: 인코딩된 비디오 비트스트림(이하 비트스트림으로 약칭)을 수신한 후, 엔트로피 디코딩 유닛(650)은 비트스트림을 파싱하여 비트스트림으로부터 신택틱 요소를 추출한다. 비트스트림 파싱의 일부로서, 엔트로피 디코딩 유닛(650)은 비트스트림 내에 있고 엔트로피 인코딩이 수행된 신택틱 요소를 파싱할 수 있다. 예측 처리 유닛(652), 역양자화 유닛(654), 역변환 처리 유닛(656), 재구성 유닛(658) 및 필터 유닛(659)은 비트스트림으로부터 추출된 신택틱 요소에 기초하여 비디오 데이터를 디코딩할 수 있고, 즉 디코딩된 비디오 데이터를 생성할 수 있다. 신택틱 요소는 정규 CABAC 인코딩/디코딩된 이진 코드 워드 및 바이패스 인코딩/디코딩된 이진 코드 워드를 포함할 수 있다. 엔트로피 디코딩 유닛(650)은 정규 CABAC 인코딩/디코딩 엔진(666)을 사용하여 정규 CABAC 인코딩/디코딩된 이진 코드 워드를 디코딩할 수 있고, 바이패스 인코딩/디코딩 엔진(668)을 사용하여 바이패스 인코딩/디코딩된 이진 코드 워드를 디코딩할 수 있다.
예측 프로세싱 유닛(652)은 모션 보상 유닛(662) 및 인트라 프레임 예측 프로세싱 유닛(642)을 포함한다. 인터-프레임 예측 인코딩이 디코딩될 이미지 블록에 대해 사용될 때, 모션 보상 유닛(662)은 디코딩될 이미지 블록의 모션 정보에 기초하여 하나 이상의 참조 블록을 결정하고, 이 참조 블록에 기초하여 디코딩될 이미지 블록의 예측 픽셀 블록을 생성할 수 있다. 디코딩 대상 이미지 블록에 대해 인트라-프레임 예측 인코딩이 사용되는 경우, 인트라-프레임 예측 프로세싱 유닛(664)은 인트라-프레임 예측을 수행하여 이미지 블록의 예측 픽셀 블록을 생성한다. 인트라 프레임 예측 프로세싱 유닛(664)은 인트라 프레임 예측 모드를 사용하여 공간적으로 인접한 이미지 블록의 픽셀을 기초로 디코딩 대상 이미지 블록의 예측 픽셀 블록을 생성할 수 있다.
재구성 유닛(658)은 예측 처리 유닛(652)에 의해 획득된 예측 픽셀 블록 및 역양자화 유닛(654) 및 역변환 프로세싱 유닛(656)에 의해 처리된 디코딩될 이미지 블록의 잔차 데이터를 재구성하여, 디코딩될 이미지 블록의 재구성된 이미지 블록을 획득한다. 복수의 이미지 블록을 포함하는 이미지의 프레임은 필터 유닛(659)에 의해 필터링되고, 그런 다음 디코딩된 이미지 버퍼(660)에 저장된다. 이러한 방식으로, 인코딩된 비디오 비트스트림의 디코딩이 완료된다. 디코딩된 이미지 버퍼(660)에 저장된 디코딩된 이미지는 디스플레이를 위해 디스플레이 장치로 직접 출력될 수 있거나, 후속 비트스트림 디코딩 프로세스에서 참조 이미지로서 사용될 수 있다.
본 개시의 기술적 솔루션은 모션 보상 유닛(662)이 모션 보상 예측 디코딩을 수행하는 프로세스에 적용된다. 예시적인 디코딩 프로세스가 도 7에 도시되어 있다. 본 개시에서의 디코딩 방법 및 인코딩 방법은 본질적으로 동일하며, 디코딩 방법은 인코딩 방법의 역 프로세스라는 것에 유의해야 한다. 이하에서는 디코딩 방법을 예로 들어 설명하지만, 특별히 언급하지 않는 한, 그 방법은 기본적으로 인코딩 방법과 동일하다. 따라서, 이하에 설명되는 디코딩 프로세스에서, 인코딩과 관련된 설명 및 설명은 솔루션과 어떠한 충돌 또는 불일치를 구성하지 않는다.
도 7은 본 개시의 실시예에 따른 비디오 이미지 인코딩 방법의 개략적인 흐름도이다. 구체적으로, 도 7에 도시된 바와 같이, 방법(700)은 다음 단계들을 포함한다:
S710. 아핀 이미지 블록의 모션 벡터 차이를 결정한다.
S720. 아핀 이미지 블록의 모션 벡터 정밀도를 결정한다.
S730. 모션 벡터 차이, 모션 벡터 정밀도, 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 아핀 이미지 블록의 크기에 기초하여 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 수평 방향의 아핀 이미지 블록의 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 수직 방향의 아핀 이미지 블록의 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 제어 포인트는 모션 벡터 차이를 결정하는 데 사용되는 픽셀이다.
S740. 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 아핀 이미지 블록에 대한 디코딩 처리를 수행한다.
구체적으로, 디코딩/인코딩 장치는 결정된 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하고, 아핀 이미지 블록의 모션 벡터 정밀도를 결정하고, 아핀 모션 보상 이미지 서브-블록의 크기를 결정하고, 결정된 모션 벡터 차이 및 모션 벡터 정밀도, 제어 포인트 사이의 거리, 및 아핀 이미지 블록의 크기에 기초하여 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 여기서 아핀 모션 보상 이미지 서브-블록의 크기는 아핀 이미지 블록을 분할하는 데 사용되는 크기이며, 아핀 이미지 블록은 분할 크기에 기초하여 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록으로 분할된다. 그런 다음, 디코딩/인코딩 장치는 아핀 모션 보상 이미지 서브-블록에 기초하여 아핀 이미지 블록을 디코딩한다. 아핀 이미지 블록은 일반적으로 정사각형 또는 정사각형 모양이라는 점에 유의해야 한다. 이에 상응하여, 아핀 모션 보상 이미지 서브-블록은 또한 규칙적인 직사각형 또는 정사각형의 형상이다. 따라서, 수평 방향 및 수직 방향으로의 아핀 모션 보상 서브-이미지의 길이가 결정된 후에, 아핀 모션 보상 서브-이미지의 전체 크기가 결정될 수 있다. 수평 방향 및 수직 방향은 관련 기술 분야에서 일반적으로 사용되는 기준 좌표계이며, 비디오 이미지에서 이미지 블록/아핀 이미지 블록의 위치를 찾는 데 사용된다. 수평 방향은 일반적으로 정사각형 비디오 이미지의 장변의 방향을 나타내고, 수직 방향은 일반적으로 정사각형 직사각형 비디오 이미지의 단변의 방향을 나타내며, 수평 방향과 수직 방향은 서로 수직이다. 일반성을 잃지 않으면서, 수평 방향은 제1 방향으로 대체될 수 있고, 수직 방향은 제1 방향에 수직인 제2 방향으로 대체될 수 있다. 그렇지만, 본 명세서에서는 설명의 편의상 수평 방향 및 수직 방향을 사용한다. 또한, 본 명세서의 디코딩 방법에서 설명된 "아핀 이미지 블록 디코딩"은 비트스트림으로부터 인코딩된 데이터를 파싱하고 아핀 이미지 블록을 기본 단위로 사용하여 인코딩된 이미지를 재구성 및 복원하는 프로세스이다. "아핀 이미지 블록 디코딩"이 사용되지만, 아핀 이미지 블록이 재구성된 것으로 간주될 수 없다.
본 개시의 이 실시예에서 비디오 이미지 디코딩 방법을 수행함으로써, 모션 보상 유닛(662)은 결정된 아핀 이미지 블록의 모션 벡터 차이 및 모션 벡터 정밀도, 제어 포인트 사이의 거리 및 아핀 이미지 블록의 크기에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 결정하고, 이 아핀 이미지 블록을 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 동일한 크기를 갖는 복수의 아핀 모션 보상 서브-이미지들로 분할하며, 그런 다음, 디코딩 처리를 수행한다. 따라서, 디코딩 프로세스에서, 전술한 파라미터의 변화에 기초하여 적절한 크기를 갖는 아핀 모션 보상 이미지 서브-블록이 적응적으로 선택될 수 있고, 디코딩 복잡도는 감소되고 성능이 개선된다.
본 개시의 이 실시예에서, 아핀 이미지(Affine) 블록은 모든 유닛의 모션 벡터가 동일한 아핀 모델들을 충족시키는 이미지 블록, 예를 들어 동일한 파라미터 또는 동일한 파라미터 그룹을 사용하여 표시될 수 있는 동일한 아핀 모델을 충족시키는 이미지 블록이라는 것을 이해해야 한다. 단위는 픽셀 그룹이고, 예를 들어 픽셀일 수 있거나, 1×3 또는 2×4 블록 구조 등일 수 있다. 이것은 본 개시에 제한되지 않는다. 또한, 본 개시의 이 실시예에서, 임의의 비 중첩 픽셀이 제어 포인트로서 선택되어 아핀 블록의 모션 벡터 차이를 결정할 수 있다. 이것은 본 개시에 제한되지 않는다.
바람직하게는, S710은:
동일한 수평선 상에 위치하는 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제1 성분을 결정하는 단계; 및/또는
동일한 수직선 상에 위치하는 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제2 성분을 결정하는 단계
를 포함한다.
제1 제어 포인트와 제2 제어 포인트 사이에 제1 수평 거리가 있고, 제3 제어 포인트와 제4 제어 포인트 사이에 제1 수직 거리가 있다. 단계 S710에 포함된 솔루션에서 "및/또는"은 구체적으로 다음의 3가지 다른 기술적 솔루션을 나타낸다는 것에 주목해야 한다.
솔루션 1: 3개의 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하는 방법은: 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제1 성분을 결정하는 단계, 및 동일한 수평선 상에 위치하는 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제2 성분을 결정하는 단계를 포함한다.
솔루션 2: 수평 방향의 2개의 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하는 방법은: 동일한 수평선 상에 위치하는 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제1 성분을 결정하는 단계를 포함한다.
솔루션 3: 수직 방향의 2개의 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하는 방법은: 동일한 수직선 상에 위치하는 제3 제어 포인트의 모션 벡터와 및 제4 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제2 성분을 결정하는 단계를 포함한다.
본 개시의 이 실시예에서, 모션 벡터 차이의 제1 성분은 모션 벡터 차이의 수평 성분이고, 모션 벡터 차이의 제2 성분은 모션 벡터 차이의 수직 성분이라는 것을 이해해야 한다. 솔루션 1에서, 모션 벡터 차이의 제1 성분 및 모션 벡터 차이의 제2 성분은 아핀 이미지 블록의 모션 벡터 차이를 공동으로 반영한다. 그렇지만, 솔루션 2 및 솔루션 3에서, 모션 벡터 차이의 제1 성분 및 모션 벡터 차이의 제2 성분은 아핀 이미지 블록의 모션 벡터 차이를 독립적으로 반영한다. 다시 말해, 솔루션 1에서, 아핀 이미지 블록의 모션 벡터 차이는 모션 벡터 차이의 제1 성분 및 모션 벡터 차이의 제2 성분을 포함하고; 솔루션 2에서, 아핀 이미지 블록의 모션 벡터 차이는 모션 벡터 차이의 제1 성분을 포함하고; 솔루션 3에서, 아핀 이미지 블록의 모션 벡터 차이는 모션 벡터 차이의 제2 성분을 포함한다. 또한, 본 개시의 이 실시예에서, 제1, 제2, 제3 및 제4는 픽셀을 구별하기 위해서만 사용되며 본 개시의 보호 범위에 대한 어떠한 제한도 구성해서는 안 된다는 것을 이해해야 한다. 예를 들어, 제1 제어 포인트는 또한 제2 제어 포인트로 지칭될 수 있고, 제2 제어 포인트는 제1 제어 포인트로 지칭될 수 있다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트 및 제3 제어 포인트는 동일한 픽셀이다. 구체적으로, 3개의 제어 포인트가 선택되고, 3개의 제어 포인트 중 하나가 다른 2개의 제어 포인트 중 하나와 동일한 수평선 상에 위치하고 마지막 제어 포인트와 동일한 수직선 상에 위치하는다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트, 제2 제어 포인트, 제3 제어 포인트 및 제4 제어 포인트는 아핀 블록의 정점이다. 아핀 블록에서 4개의 정점은 각각 좌측 상단 정점, 좌측 하단 정점, 우측 상단 정점 및 우측 하단 정점으로 표시되는 것으로 가정한다.
솔루션 1에서, 2개의 직교 방향의 임의의 3개의 정점은 아핀 블록의 모션 벡터 차이를 결정하기 위해 선택될 수 있다. 예를 들어, 좌측 상단 정점, 좌측 하단 정점 및 우측 상단 정점을 선택하거나 좌측 상단 정점, 우측 상단 정점 및 우측 하단 정점을 선택할 수 있다.
솔루션 2에서, 동일한 수평선 상에 위치하는 임의의 2개의 정점이 아핀 블록의 모션 벡터 차이를 결정하도록 선택될 수 있다. 예를 들어, 좌측 상단 정점과 우측 상단 정점을 선택하거나 좌측 하단 정점과 우측 하단 정점을 선택할 수 있다.
솔루션 3에서, 동일한 수직선 상에 위치하는 임의의 2개의 정점이 아핀 블록의 모션 벡터 차이를 결정하도록 선택될 수 있다. 예를 들어, 좌측 상단 정점과 좌측 하단 정점을 선택하거나 우측 상단 정점과 우측 하단 정점을 선택할 수 있다. 이것은 본 개시에 제한되지 않는다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트 및 제2 제어 포인트의 모션 벡터의 성분 간의 차이이면서 또한 두 방향(수평 방향 및 수직 방향, 또는 x 방향 및 y 방향으로 지칭됨) 중 어느 한 방향에 있는 차이는 아핀 블록의 모션 벡터 차이의 제1 성분으로서 결정될 수 있고, 제3 제어 포인트 및 제4 제어 포인트의 모션 벡터의 성분 간의 차이이면서 또한 두 방향 중 어느 하나에 있는 차이는 아핀 블록의 모션 벡터 차이의 제2 성분으로서 결정될 수 있다. 모션 벡터 차이를 결정하는 방식은 솔루션 1, 2 및 3에 적용 가능하다. 대안으로, 인코딩 복잡성 및 인코딩 성능에 대한 실제 요구 사항에 따라, 이 두 방향에서 제1 제어 포인트의 모션 벡터의 성분과 제2 제어 포인트의 모션 벡터의 성분 사이의 2개의 차이의 값은 제1 성분으로서 선택 및 결정될 수 있고, 이 두 방향에서 제3 제어 포인트의 모션 벡터의 성분과 제4 제어 포인트의 모션 벡터의 성분 사이의 2개의 차이의 값은 제1 성분으로서 선택 및 결정될 수 있다. 이것은 본 개시에 제한되지 않는다.
제1 제어 포인트 내지 제4 제어 포인트 각각의 모션 벡터는 일반적으로 2개의 성분, 즉 수평 성분 및 수직 성분을 포함한다. 따라서, 전술한 단계들에서, 동일한 수평선 상에 위치하는 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제1 성분을 결정하고, 동일한 수직선 상에 위치하는 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제2 성분을 결정하는 단계는 구체적으로 다음과 같은 방식:
상기 제1 제어 포인트의 모션 벡터와 상기 제2 제어 포인트의 모션 벡터 사이의 제1 수평 성분 차이 및 제1 수직 성분 차이를 결정하고, 상기 제1 수평 성분 차이와 상기 제1 수직 성분 차이 중 더 큰 것을 모션 벡터 차이의 제1 성분으로서 결정하는 단계; 및
이에 상응하여 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 제2 수평 성분 차이와 제2 수직 성분 차이를 대응하여 결정하고, 제2 수평 성분 차이와 제2 수직 성분 차이 중 더 큰 것을 모션 벡터 차이의 제2 성분으로서 결정하는 단계
를 포함한다.
구체적으로,
Figure 112020022500230-pct00057
Figure 112020022500230-pct00058
Figure 112020022500230-pct00059
상의 픽셀의 수평 성분 및 수직 성분을 나타내는 데 사용되면, 아핀 블록의 모션 벡터 차이는 식 (13) 및 식 (14)에 따라 결정될 수 있다:
Figure 112020022500230-pct00060
(13)
Figure 112020022500230-pct00061
(14)
Figure 112020022500230-pct00062
는 최댓값을 나타내고,
Figure 112020022500230-pct00063
는 아핀 블록의 모션 벡터 차이의 수평 성분을 나타내고,
Figure 112020022500230-pct00064
는 아핀 블록의 모션 벡터 차이의 수직성분을 나타내고, W는 제1 제어 포인트와 제2 제어 포인트 사이의 제1 수평 거리를 나타내며, H는 는 제3 제어 포인트와 제4 제어 포인트 사이의 제1 수직 거리를 나타낸다. 도 8을 참조하면, 식 (13)은 모션 벡터 수평 차이
Figure 112020022500230-pct00065
가 동일한 수평 방향의 2개의 제어 포인트의 모션 벡터의 성분의 최대 델타이고, 다시 말해 모션 벡터 차이의 절댓값이 가장 크다는 것을 나타낸다. 예를 들어, 정점 0 및 정점 1 또는 정점 2 및 정점 3이 제어 포인트로 선택되어
Figure 112020022500230-pct00066
를 계산할 수 있다. 식 (14)는 모션 벡터 수평 차이
Figure 112020022500230-pct00067
가 동일한 수직 방향의 2개의 제어 포인트의 모션 벡터의 성분의 최대 델타이고, 다시 말해 모션 벡터 차이의 절댓값이 가장 크다는 것을 나타낸다. 예를 들어, 정점 0 및 정점 2 또는 정점 1 및 정점 3이 제어 포인트로 선택되어
Figure 112020022500230-pct00068
를 계산할 수 있다. 식 (13) 및 식 (14)는 솔루션 1, 2, 3 중 어느 하나에 적용 가능하다는 것을 이해할 수 있다. 자세한 내용은 다음과 같다:
솔루션 1에서, 아핀 이미지 블록의 모션 벡터 차이는 3개의 제어 포인트에 기초하여 결정되고, 모션 벡터 차이는 제1 성분 및 제2 성분을 포함한다. 따라서, 솔루션 1에서, 아핀 이미지 블록의 모션 벡터 차이는 식 (13) 및 식 (14)의 조합을 사용하여 얻어진다.
솔루션 2에서, 아핀 이미지 블록의 모션 벡터 차이는 수평 방향의 2개의 제어 포인트에 기초하여 결정되고, 모션 벡터 차이는 제1 성분만을 포함한다. 따라서, 솔루션 2에서, 아핀 이미지 블록의 모션 벡터 차이는 식 (13)을 사용하여 얻어진다. 예를 들어 도 8을 사용한다. 대부분의 경우, 아핀 블록에서 정점의 모션 벡터가 알려져 있다. 이 경우, 모션 벡터 차이는 아핀 블록에서 정점의 모션 벡터에 기초하여 직접 계산될 수 있다.
도 8에서 아핀 블록의 정점의 모션 벡터
Figure 112020022500230-pct00069
Figure 112020022500230-pct00070
이 알려져 있으면, 다음과 같다:
Figure 112020022500230-pct00071
(15)
도 8에서 아핀 블록의 정점의 모션 벡터
Figure 112020022500230-pct00072
Figure 112020022500230-pct00073
이 알려져 있으면, 다음과 같다:
Figure 112020022500230-pct00074
(16)
다른 공지된 모션 벡터의 조합이 또한 선택될 수 있다. 이것은 본 개시에 제한되지 않는다.
전술한 솔루션에 사용된 제어 포인트의 모션 벡터는 아핀 변환 모델에 기초하여 획득될 수 있다. 예를 들어, 4-파라미터 아핀 변환 모델이 사용되고, 아핀 이미지 블록 내의 좌측 상단 모서리 상의
Figure 112020022500230-pct00075
및 우측 상단 모서리 상의
Figure 112020022500230-pct00076
가 제어 포인트로서 사용될 때, 모델 식은 다음과 같다:
Figure 112020022500230-pct00077
(17)
Figure 112020022500230-pct00078
Figure 112020022500230-pct00079
는 각각 좌측 상단 모서리 및 우측 상단 모서리 상의 제어 포인트의 모션 벡터이다. 좌측 상단 모서리 및 우측 상단 모서리 상의 제어 포인트의 좌표
Figure 112020022500230-pct00080
Figure 112020022500230-pct00081
가 식에 대입되면
Figure 112020022500230-pct00082
Figure 112020022500230-pct00083
가 획득될 수 있다.
솔루션 3에서, 아핀 이미지 블록의 모션 벡터 차이는 수직 방향의 2개의 제어 포인트에 기초하여 결정되고, 모션 벡터 차이는 제2 성분만을 포함한다. 따라서, 솔루션 3에서, 아핀 이미지 블록의 모션 벡터 차이는 식 (14)를 사용하여 얻어진다. 예를 들어 8을 사용한다. 대부분의 경우, 아핀 블록에서 정점의 모션 벡터가 알려져 있다. 이 경우, 모션 벡터 차이는 아핀 블록에서 정점의 모션 벡터에 기초하여 직접 계산될 수 있다.
도 8에서 아핀 블록의 정점의 모션 벡터
Figure 112020022500230-pct00084
Figure 112020022500230-pct00085
가 알려져 있으면, 다음과 같다:
Figure 112020022500230-pct00086
(18)
도 8에서 아핀 블록의 정점의 모션 벡터
Figure 112020022500230-pct00087
Figure 112020022500230-pct00088
이 알려져 있으면, 다음과 같다:
Figure 112020022500230-pct00089
(19)
다른 공지된 모션 벡터의 조합이 또한 선택될 수 있다. 이것은 본 개시에 제한되지 않는다.
전술한 솔루션에 사용된 제어 포인트의 모션 벡터는 아핀 변환 모델에 기초하여 획득될 수 있다. 예를 들어, 4-파라미터 아핀 변환 모델이 사용되고, 아핀 이미지 블록 내의 좌측 상단 모서리 상의
Figure 112020022500230-pct00090
및 좌측 하단 모서리 상의
Figure 112020022500230-pct00091
가 제어 포인트로서 사용될 때, 모델 식은 다음과 같다:
Figure 112020022500230-pct00092
(20)
Figure 112020022500230-pct00093
Figure 112020022500230-pct00094
는 각각 좌측 상단 모서리 및 좌측 하단 모서리 상의 제어 포인트의 모션 벡터이다. 우측 상단 모서리 및 우측 하단 모서리 상의 제어 포인트의 좌표
Figure 112020022500230-pct00095
Figure 112020022500230-pct00096
가 식에 대입되면
Figure 112020022500230-pct00097
Figure 112020022500230-pct00098
가 획득될 수 있다.
선택적으로, 본 개시의 이 실시예에서, 모션 벡터 차이는 아핀 모델에 기초하여 획득된다. 즉, 모션 벡터 차이는 아핀 이미지 블록에서 픽셀의 아핀 변환 파라미터를 결정함으로써 얻어진다. 아핀 이미지 블록의 픽셀들은 동일한 아핀 변환 파라미터를 갖는다는 것에 주목해야 한다.
이에 대응하여, 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 제1 수평 성분 차이 및 제1 수직 성분 차이를 결정하는 단계는 구체적으로: 아핀 변환 파라미터 및 제1 수평 거리에 기초하여 제1 수평 성분 차이 및 제1 수직 성분 차이를 결정하는 단계이고; 상기 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 제2 수평 성분 차이 및 제2 수직 성분 차이를 결정하는 전술한 단계는 구체적으로: 아핀 변환 파라미터와 제1 수직 거리에 기초하여 제2 수평 성분 차이 및 제2 수직 성분 차이를 결정하는 단계이다.
전술한 프로세스의 순번은 실행 순서를 나타내지 않는다는 것을 이해해야 한다. 프로세스의 실행 순서는 프로세스의 기능 및 내부 로직에 기초하여 결정되어야하고, 본 개시의 이 실시예의 구현 프로세스에 대한 어떠한 제한도 구성해서는 안 된다.
선택적으로, 본 개시의 이 실시예에서, 아핀 변환 모델은 종래 기술의 6-파라미터 아핀 변환 모델일 수 있거나, 종래 기술의 4-파라미터 또는 2-파라미터 아핀 변환 모델일 수 있다. 6-파라미터 아핀 변환 모델은 주로 3개의 제어 포인트에 기초하는 솔루션 1의 시나리오에 적용되며, 4-파라미터 아핀 변환 모델은 주로 3개의 제어 포인트에 기초하여 솔루션 2 및 솔루션 3의 시나리오에 적용된다. 이하에서는 6-파라미터 아핀 변환 모델과 4-파라미터 아핀 변환 모델을 예로 개별적으로 사용하여 아핀 변환 파라미터에 기초하여 모션 벡터 차이를 얻는 과정을 설명한다.
6-파라미터 아핀 변환 모델에서,
Figure 112020022551696-pct00099
는 현재 이미지 내의 현재 아핀 이미지 블록의 픽셀
Figure 112020022551696-pct00100
의 좌표이고,
Figure 112020022551696-pct00101
는 참조 이미지에 있으면서 픽셀
Figure 112020022551696-pct00102
와 일치하는 픽셀
Figure 112020022551696-pct00103
의 좌표이고,
Figure 112020022551696-pct00104
는 아핀 변환 파라미터이다. 아핀 변환 파라미터가 알려져 있으면, 참조 이미지 내의 픽셀
Figure 112020022551696-pct00105
의 위치
Figure 112020022551696-pct00106
는 계산될 수 있으며, 따라서 픽셀의 예측 신호는 참조 이미지로부터 획득될 수 있다.
Figure 112020022500230-pct00107
(21)
Figure 112020022500230-pct00108
(22)
아핀 변환 파라미터는 통상적으로 아핀 이미지 블록 내의 일부 픽셀의 모션 벡터에 기초하여 계산될 수 있고, 모션 벡터의 수평 성분 및 수직 성분은 식 (23) 및 식 (24)으로 각각 표현될 수 있다:
Figure 112020022500230-pct00109
(23)
Figure 112020022500230-pct00110
(24)
식 (21)은 식 (23)으로 대체되고, 식 (22)는 식 (24)로 대체되어, 좌표가 (x, y)인 픽셀의 모션 벡터의 수평 성분 및 수직 성분을 획득하며, 여기서 수평 성분 및 수직 성분은 각각 식 (25) 및 식 (26)로 표현된다:
Figure 112020022500230-pct00111
(25)
Figure 112020022500230-pct00112
(26)
식 (25)는 식 (13)으로 대체되고, 식 (26)은 식 (14)로 대체된다. 이 방식으로 식 (13) 및 식 (14)는 식 (27) 및 식 (28)로 각각 대체된다:
Figure 112020022500230-pct00113
(27)
Figure 112020022500230-pct00114
(28)
아핀 블록의 모션 벡터 차이의 제1 성분 및 제2 성분은 제어 포인트 간의 거리에 기초하여 그리고 아핀 변환 파라미터 a, b, c 및 d를 결정함으로써 결정될 수 있다
4-파라미터 아핀 변환 모델에서,
Figure 112020022551696-pct00115
는 현재 이미지 내의 아핀 이미지 블록의 픽셀
Figure 112020022551696-pct00116
의 좌표이고,
Figure 112020022551696-pct00117
는 참조 이미지에 있으면서 픽셀
Figure 112020022551696-pct00118
와 일치하는 픽셀
Figure 112020022551696-pct00119
의 좌표이고,
Figure 112020022551696-pct00120
는 아핀 변환 파라미터이다. 아핀 변환 파라미터가 알려져 있으면, 참조 이미지 내의 픽셀
Figure 112020022551696-pct00121
의 위치
Figure 112020022551696-pct00122
는 계산될 수 있으며, 따라서 픽셀의 예측 신호는 참조 이미지로부터 획득될 수 있다.
Figure 112020022500230-pct00123
(29)
Figure 112020022500230-pct00124
(30)
식 (29)는 솔루션 2의 시나리오에 해당하며, 여기서 아핀 이미지 블록의 모션 벡터 차이는 수평 방향의 2개의 제어 포인트에 기초하여 결정된다. 식 (30)은 솔루션 3의 시나리오에 해당하며, 여기서 아핀 이미지 블록의 모션 벡터 차이는 수직 방향의 2개의 제어 포인트에 기초하여 결정된다.
아핀 변환 파라미터는 일반적으로 이미지 블록에서 일부 픽셀의 모션 벡터에 기초하여 계산될 수 있다. 모션 벡터의 수평 성분 및 수직 성분에 대해서는 식 (23) 및 식 (24)를 참조한다. 식 (29) 및 식 (30)은 각각 식 (23) 및 식 (24)로 치환되어 좌표가 (x, y)인 픽셀의 모션 벡터의 수평 성분 및 수직 성분을 얻고, 수평 성분 및 수직 성분은 각각 식 (31) 및 식 (32)로 표현된다:
Figure 112020022500230-pct00125
(31)
Figure 112020022500230-pct00126
(32)
식 (31) 및 식 (32)는 식 (13) 및 식 (14)로 대체된다. 이 방식으로, 식 (13) 및 식 (14)는 각각 식 (33) 및 식 (34)로 변환된다:
Figure 112020022500230-pct00127
(33)
Figure 112020022500230-pct00128
(34)
솔루션 2 또는 솔루션 3의 시나리오에서 아핀 블록의 모션 벡터 차이의 제1 성분 또는 제2 성분은 제어 포인트 사이의 거리에 기초하여 그리고 아핀 변환 파라미터 a 및 b를 결정함으로써 결정될 수 있다.
2-파라미터 아핀 변환 모델이 사용될 때 모션 벡터 차이를 결정하는 방법은 6-파라미터 아핀 변환 모델 또는 4-파라미터 아핀 변환 모델이 사용될 때 모션 벡터 차이를 결정하는 방법과 본질적으로 동일하다는 것을 이해해야 한다. 간결성을 위해, 자세한 내용은 본 명세서에서 다시 설명되지 않는다.
선택적으로, 본 개시의 이 실시예에서, 디코딩 프로세스에서, 아핀 변환 파라미터는 파라미터에 대한 반복 계산을 수행함으로써 획득될 수 있다. 예를 들어, 파라미터 a는 1만큼 증가하여 모델에 기초한 모션 보상 예측 신호가 최적인지를 판정한다. 대안으로, 아핀 변환 파라미터는 인접한 아핀 블록의 아핀 변환 파라미터에 기초한 추론을 통해 획득될 수 있다. 그렇지만, 이것은 본 개시에 제한되지 않는다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트의 모션 벡터, 제2 제어 포인트의 모션 벡터, 제3 제어 포인트의 모션 벡터 및 제4 제어 포인트의 모션 벡터가 결정되어 아핀 이미지 블록의 모션 벡터 차이를 결정한다.
이에 대응하여, 솔루션 1의 시나리오에서, 제1 제어 포인트의 모션 벡터의 수평 성분과 제2 제어 포인트의 모션 벡터의 수평 성분 간의 차이는 제1 수평 성분 차이로서 결정되고; 제1 제어 포인트의 모션 벡터의 수직 성분과 제2 제어 포인트의 모션 벡터의 수직 성분 간의 차이는 제1 수직 성분 차이로서 결정되고; 제3 제어 포인트의 모션 벡터의 수평 성분과 제4 제어 포인트의 모션 벡터의 수평 성분 간의 차이는 제2 수평 성분 차이로서 결정되고; 그리고 제3 제어 포인트의 모션 벡터의 수직 성분과 제4 제어 포인트의 모션 벡터의 수직 성분 간의 차이는 제2 수직 성분 차이로서 결정된다.
솔루션 2의 시나리오에서, 제1 제어 포인트의 모션 벡터의 수평 성분과 제2 제어 포인트의 모션 벡터의 수평 성분 간의 차이는 제1 수평 성분 차이로 결정되고; 그리고 제1 제어 포인트의 모션 벡터의 수직 성분과 제2 제어 포인트의 모션 벡터의 수직 성분 사이의 차이는 제1 수직 성분 차이로서 결정된다.
솔루션 3의 시나리오에서, 제3 제어 포인트의 모션 벡터의 수평 성분과 제4 제어 포인트의 모션 벡터의 수평 성분 간의 차이는 제2 수평 성분 차이로서 결정되고; 그리고 제3 제어 포인트의 모션 벡터의 수직 성분과 제4 제어 포인트의 모션 벡터의 수직 성분 간의 차이는 제2 수직 성분 차이로서 결정된다.
구체적으로, 제어 포인트의 모션 벡터가 직접 결정될 수 있고, 모션 벡터의 성분들 사이의 차이를 계산함으로써 아핀 블록의 모션 벡터 차이의 제1 성분 및 제2 성분이 직접적으로 획득될 수 있다.
예를 들어, 도 9는 본 개시의 실시예에 따른 아핀 이미지 블록 및 제어 포인트의 다른 개략도이다. 거리
Figure 112020022551696-pct00129
를 갖는 2개의 제어 포인트 A 및 B는 동일한 수평선 상에 위치하고
Figure 112020022551696-pct00130
를 갖는 2개의 제어 포인트 C 및 D는 동일한 수직선 상에 위치한다. 제어 포인트 A, B, C, 및 D의 모션 벡터가 알려지면, 아핀 블록의 모션 벡터 차이의 제1 성분 및 제2 성분은 식 (35) 및 식 (36)에 따라 결정될 수 있다:
Figure 112020022500230-pct00131
(35)
Figure 112020022500230-pct00132
(36)
선택적으로, 본 개시의 이 실시예에서, 제어 포인트 A 및 C는 동일한 픽셀일 수 있다.
선택적으로, 본 개시의 이 실시예에서, 제어 포인트 A, B, C 및 D는 아핀 블록의 정점일 수 있다. 이 경우, 제어 포인트 A와 B 사이의 거리는 아핀 블록의 폭 W이고, 제어 포인트 C와 D 사이의 거리는 아핀 블록의 높이 H이다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트 및 제2 제어 포인트는 2개의 인접 픽셀이고, 제3 제어 포인트 및 제4 제어 포인트는 2개의 인접 픽셀이다. 다시 말해, 제어 포인트는 반드시 아핀 이미지 블록 내의 정점이라고도 하는 4개의 코너 포인트 중에서 반드시 선택될 필요는 없지만, 아핀 이미지 블록의 임의의 위치에 있고 인코더 측 및 디코더 측에 의해 공동으로 설정되는 포인트들일 수 있으며, 이 포인트들은 시그널링을 사용하여 비트스트림으로 명시적으로 표시되거나, 주변 아핀 이미지 블록 내의 제어 포인트에 기초하여 추정 또는 복제를 통해 획득된다. 이 경우, 제1 수평 성분 차이, 제1 수직 성분 차이, 제2 수평 성분 차이 및 제2 수직 성분 차이를 결정하는 것은 구체적으로 다음과 같다:
제1 픽셀의 모션 벡터, 제2 픽셀의 모션 벡터 및 제3 픽셀의 모션 벡터가 결정되며, 여기서 제1 픽셀, 제2 픽셀 및 제3 픽셀은 서로 겹치지 않는 픽셀이고; 제1 픽셀과 제2 픽셀 사이의 제2 수평 거리 및 제2 수직 거리가 결정되고; 제1 픽셀과 제3 픽셀 사이의 제3 수평 거리 및 제3 수직 거리가 결정되고; 제1 수평 성분 차이, 제1 수직 성분 차이, 제2 수평 성분 차이 및 제2 수직 성분 차이는 제1 픽셀의 모션 벡터, 제2 픽셀의 모션 벡터, 및 제3 픽셀의 모션 벡터, 제2 수평 거리, 제2 수직 거리, 제3 수평 거리 및 제3 수직 거리에 기초하여 결정된다. 전술한 바는 3개의 제어 포인트에 기초한 솔루션 1을 예로 사용하여 설명된다. 2개의 제어 포인트를 기반으로 하는 솔루션 2 또는 솔루션 3과 3개의 제어 포인트를 기반으로 하는 솔루션 1의 차이점은 다음과 같다: 솔루션 1의 제1 성분 차이 또는 제2 성분 차이만이 2개의 제어 포인트에 기반한 아핀 이미지 블록의 모션 벡터 차이로 사용된다.
구체적으로, A, B, 및 C가 서로 중첩하지 않는 이미지 블록 내의 임의의 3개의 픽셀인 것으로 가정하고, 이 3개의 픽셀의 위치가 도 10에 도시되어 있으며, 3개의 픽셀의 모션 벡터는 각각
Figure 112020022500230-pct00133
,
Figure 112020022500230-pct00134
,
Figure 112020022500230-pct00135
이다. 수평 방향의 픽셀 A와 픽셀 B 사이의 거리는
Figure 112020022500230-pct00136
이고, 수직 방향의 픽셀 A와 픽셀 B 사이의 거리는
Figure 112020022500230-pct00137
이고, 수평 방향의 픽셀 A와 픽셀 C 사이의 거리는
Figure 112020022500230-pct00138
이고, 수직 방향의 픽셀 A와 픽셀 B 사이의 거리는
Figure 112020022500230-pct00139
이다. 수평 방향의 픽셀 B와 픽셀 C 사이의 거리는
Figure 112020022500230-pct00140
이고, 수직 방향의 픽셀 B와 픽셀 C 사이의 거리는
Figure 112020022500230-pct00141
이다. 수평 방향으로 인접하는 2개의 픽셀의 모션 벡터의 수평 성분 간의 거리는 각각
Figure 112020022500230-pct00142
Figure 112020022500230-pct00143
이고, 수직 방향으로 인접하는 2개의 픽셀의 모션 벡터의 수직 성분 간의 거리는 각각
Figure 112020022500230-pct00144
Figure 112020022500230-pct00145
이다. 이미지 블록 내의 모션 벡터는 선형으로 변하기 때문에,
Figure 112020022500230-pct00146
,
Figure 112020022500230-pct00147
,
Figure 112020022500230-pct00148
Figure 112020022500230-pct00149
는 픽셀 A, B, 및 C의 모션 벡터를 결정하여 결정될 수 있고, 이미지 블록 내의 인접 픽셀 간의 모션 벡터 차이가 결정될 수 있다. 구체적으로, 모션 벡터 차이는 식 (37) 내지 식 (40)에 따라 결정될 수 있다:
Figure 112020022500230-pct00150
(37)
Figure 112020022500230-pct00151
(38)
Figure 112020022500230-pct00152
(39)
Figure 112020022500230-pct00153
(40)
대안으로, 모션 벡터 차이는 식 (37) 및 식 (38) 그리고 식 (41) 및 식 (42)에 따라 결정될 수 있다.
Figure 112020022500230-pct00154
(41)
Figure 112020022500230-pct00155
(42)
선택적으로, 본 개시의 이 실시예에서, 디코딩 장치는 모션 추정 및 검색을 통해 모든 제어 포인트의 모션 벡터를 획득할 수 있거나, 주변 이미지 블록에 기초하여 모든 제어 포인트의 모션 벡터를 획득할 수 있거나, 아핀 변환 모델에 기반한 모든 제어 포인트의 모션 벡터를 계산할 수 있다. 대안으로, 디코딩 장치는 모션 추정 및 검색을 통해 일부 제어 포인트의 모션 벡터를 획득하고, 인접한 이미지 블록에 기초하여 다른 제어 포인트의 모션 벡터를 획득할 수 있다. 대안으로, 디코딩 장치는 아핀 모션 추정 및 검색을 통해 일부 제어 포인트의 모션 벡터를 획득하고, 아핀 변환 모델에 기초하여 다른 제어 포인트의 모션 벡터를 계산할 수 있다. 대안으로, 디코딩 장치는 인접 이미지 블록에 기초하여 일부 제어 포인트의 모션 벡터를 획득하고, 아핀 변환 모델에 기초하여 다른 제어 포인트의 모션 벡터를 계산할 수 있다. 그렇지만, 이것은 본 개시에 제한되지 않는다.
선택적으로, S720에서, 제1 미리 설정된 값은 아핀 이미지 블록의 모션 벡터 정밀도로서 결정될 수 있거나; 또는 아핀 이미지 블록의 모션 벡터 정밀도는 아핀 이미지 블록의 인접한 이미지 블록의 특징에 기초하여 결정될 수 있다. 인접한 이미지 블록은 공간 및/또는 시간에서 아핀 이미지 블록에 인접한 이미지 블록이다.
구체적으로, 아핀 블록의 모션 벡터의 값은 정수일 수 있다. 이 경우, 모션 벡터 정밀도는 정수-픽셀 정밀도로 간주되며, 즉 픽셀 정밀도는 1이다. 대안으로, 모션 벡터의 값은 정수가 아닐 수 있다. 이 경우 모션 벡터 정밀도는 1/2, 1/4 또는 1/8과 같은 정밀도를 포함하여 서브 픽셀 정밀도로 간주된다. 도 11은 4×4 이미지 블록을 나타내고, 여기서 x는 정수-픽셀 위치의 픽셀을 나타내고, 수집된 이미지는 정수-픽셀 위치의 픽셀만을 가지며, O는 1/2 정밀도 위치의 픽셀을 나타내며, 1/2 정밀도 위치의 픽셀은 정수-픽셀 위치의 픽셀에 대해 보간을 수행함으로써 얻어질 필요가 있다. 정수 정밀도의 픽셀 또는 1/2 정밀도의 픽셀에 대해 추가 보간을 수행하여 다른 정밀도 위치의 픽셀 값을 얻을 필요가 있다. 현재 픽셀의 모션 벡터 정밀도가 정수이면, 현재 픽셀은 참조 이미지에서 ×의 위치를 가리킨다. 현재 픽셀의 모션 벡터 정밀도가 1/2이면, 현재 픽셀은 참조 이미지에서 O의 위치를 가리킨다.
아핀 블록의 모션 벡터 정밀도는 아핀 블록 내의 모든 픽셀에 대한 최고 모션 벡터 정밀도이다. 아핀 블록의 모션 벡터 정밀도는 예를 들어 정수-픽셀 정밀도, 또는 1/2, 1/4, 1/8 또는 1/16과 같은 정밀도로 미리 설정될 수 있다. 대안으로, 아핀 블록의 모션 벡터 정밀도는 아핀 블록의 인접한 이미지 블록의 특징에 기초하여 결정될 수 있다. 예를 들어, 주변 이미지가 비교적 매끄럽다면, 현재 아핀 블록도 또한 매끄럽다고 예측될 수 있고, 비교적 높은 모션 벡터 정밀도, 예를 들어 1/8 또는 1/16과 같은 정밀도가 선택될 수 있고; 그렇지 않으면, 비교적 낮은 모션 벡터 정밀도, 예를 들어 정수-픽셀 정밀도 또는 1/2 정밀도가 선택된다. 얻어진 정밀도는
Figure 112020022500230-pct00156
로 표시된다.
선택적으로, 도 12에 도시된 바와 같이, S730은 구체적으로 다음 단계를 포함한다.
S1201. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 모션 벡터 차이의 제1 성분에 대한 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하고, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정한다.
구체적으로, 모션 벡터 차이의 제1 성분에 대한 모션 벡터 정밀도의 비율은 모션 벡터 차이의 제1 성분에 대한 모션 벡터 정밀도의 비율이다. 비율 및 제1 수평 거리의 곱은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이이고, 수평 방향으로 초기 길이라고도 할 수 있다. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이는 일부 경우 정수가 아닐 수 있음을 이해할 수 있다. 이 경우 초기 길이를 반올림해야 한다. 예측 정밀도를 보장하기 위해 일반적으로 반올림이 수행된다. 구체적으로, 소수 부분은 직접 버려진다. 예를 들어, 초기 길이 값은 8.35(즉, 8.35 단위 픽셀의 길이)이고, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이로서 8이 직접 사용된다. 확실하게, 반올림 원리가 대안으로 사용될 수 있다. 구체적으로, 소수 부분이 5보다 작으면 반올림(rounding-down)이 수행되고, 소수 부분이 5보다 크면 반올림(rounding-up)이 수행된다. 예를 들어, 길이가 8.86으로 계산되면 9가 길이로 사용된다. 효율성을 보장하기 위해 초기 길이의 최솟값은 사전 설정된 값보다 낮으면 안 되며, 예를 들어, 2, 4, 8 또는 2N과 같은 미리 설정된 값보다 낮으면 안 된다. 미리 설정된 값은 일반적으로 4로 설정된다. 초기 길이도 수평 방향의 아핀 이미지 블록의 길이보다 크지 않아야 한다. 수평 방향의 초기 길이 또는 수평 방향의 둥근 초기 길이가 적절한지는 수평 방향의 아핀 이미지 블록의 길이가 초기 길이로 나눌 수 있는지에 따라 달라진다. 수평 방향의 아핀 이미지 블록의 길이가 초기 길이로 나눌 수 있는 경우, 이는 아핀 이미지 블록이 수평 방향의 초기 길이 또는 수평 방향의 둥근 초기 길이에 기초하여 수평 방향의 정수량의 서브-블록으로 분할될 수 있음을 나타낸다. 조정 방식은 일반적으로 수평 방향의 초기 길이 또는 수평 방향의 둥근 초기 길이가 점차 증가/감소하는 방법이다. 구체적으로, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니라고 결정되면, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 하나 이상의 단위 길이만큼 조정, 즉 증가/감소되고, 그런 다음, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 전술한 솔루션이 순환적으로 수행된다. 단위 길이는 일반적으로 하나의 단위 픽셀이다. 구체적으로, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 1만큼 조정, 즉 증가/감소된다. 일반성을 잃지 않고, 다시 말해, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 고정된 스텝 크기만큼 조정, 즉 증가/감소한다. 스텝 크기는 조정 값, 즉 각 사이클에서 수평 방향으로 아핀 모션 보상 화상 서브-블록의 길이를 조정하는 데 사용되는 기본 단위 또는 진폭이다. 스텝 크기는 일반적으로 전술한 하나의 단위 픽셀이거나 다른 값, 예를 들어 2개의 픽셀 단위일 수 있다. 선택적으로, 전술한 조정에 사용된 스텝 크기/조정 값은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이의 패리티에 따라 변할 수 있다. 예를 들어, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 홀수인 경우, 홀수 스텝 크기가 선택된다. 예를 들어, 하나의 단위 길이와 같은 홀수 수량의 단위 길이가 조정을 위한 단계 크기로 사용된다. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 짝수인 경우, 짝수 단계 크기가 선택된다. 예를 들어, 짝수의 단위 길이가 단계 크기로 사용된다.
또한, 조정이 증가인지 감소인지는 디코더 측과 인코더 측 사이의 합의에 따라 선택될 수 있고, 비트스트림에서 인코더 측에 의해 명시적으로 지시될 수 있고 명시적 지시에 기초하여 디코더 측에 의해 선택될 수 있으며, 주변 인접 블록의 모션 벡터 정밀도 값을 사용하여 추론될 수 있거나, 수평 방향의 아핀 이미지 블록의 길이와 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이 사이의 비율 관계에 기초하여 결정될 수 있다. 예를 들어, 비율이 임계 값보다 작으면, 감소가 선택되고; 그렇지 않으면 증가가 선택된다.
알고리즘을 단순화하고 인코딩 및 디코딩 효율을 보장하기 위해, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니라고 결정되면, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 조정되고, 즉 하나의 미리 설정된 단위 길이만큼 증가하고, 그런 다음 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 전술한 솔루션이 순환적으로 수행된다.
또한, 효율을 향상시키고 동작 시간을 감소시키기 위해, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 수평 방향의 아핀 이미지 블록의 길이가 나눌 수 있는 가장 가까운 값으로 조정될 수 있다. 예를 들어, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 7이고, 수평 방향의 아핀 이미지 블록의 길이는 16이다. 이 경우, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 블록은 1씩 증가하여 16을 나눌 수 있는 8로 변경된다. 마찬가지로, 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 5인 경우, 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이는 1만큼 감소하여 16을 나눌 수 있는 4로 변경된다. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이와 수평 방향의 아핀 이미지 블록의 길이를 나눌 수 있는 2개의 인접한 값 사이의 차이가 같으면, 예를 들어, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 6이고, 수평 방향의 아핀 이미지 블록의 길이가 16이고, 길이 6에 인접하고 16을 나눌 수 있는 2개의 값이 각각 4와 8이면, 조정은 인코더 측 및 디코더 측의 요구 사항에 따라 선택될 수 있다. 예를 들어, 낮은 레이턴시가 필요한 경우, 조정, 즉 증가가 선택될 수 있다. 고품질이 필요한 경우 조정, 즉 감소가 선택된다. 이것은 본 개시에 제한되지 않는다.
또한, 단계 S1201에서, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아닌 것으로 판정되는 경우, 알고리즘을 더 단순화하기 위해, 동일한 테이블이 인코더 측과 디코더 측에 개별적으로 설정될 수 있고, 수평 방향의 아핀 이미지 블록의 가능한 최대 길이는 허용된 최소 제수를 시작 값, 예를 들어, 2N으로 사용하여 복수의 간격으로 분할된다. 간격 범위는 2N+i이며, 여기서
Figure 112020022500230-pct00157
이고, Wmax는 수평 방향의 가능한 아핀 이미지 블록의 최대 길이이다. 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 속하는 구간이 결정되고, 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 속하는 구간의 하한값 또는 상한값은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 최종적으로 결정된 길이로서 사용된다. 하한값 또는 상한값을 얻기 위한 규칙에 대해서는 인코더 측과 디코더 측 사이의 합의를 참조한다. 근사 간격의 상한값 또는 하한값은 비트스트림을 사용하여 명시적으로 표시될 수 있거나 반올림 방식으로 선택될 수 있다. 전술한 표를 사용하여, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 최종 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이에 기초하여 테이블 룩업을 통해 결정될 수 있다. 따라서, 단계 S1201에서 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계가 교체될 수 있고, 시스템 복잡성이 감소되며, 계산 시간이 감소된다.
선택적으로, 솔루션에서의 계산 복잡도를 추가로 감소시키기 위해, 단계 S1201에서, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배라는 것이 결정될 뿐만 아니라, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 계산을 용이하게 하는 미리 설정된 길이 S의 정수배인지 또한 결정될 필요가 있다. 구체적으로, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 다음 조건을 만족하는지가 결정될 필요가 있다:
(1) 수평 방향의 아핀 이미지 블록의 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고; 그리고(2) 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 미리 설정된 길이 S의 정수배이다.
수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 2개의 조건을 만족하지 않으면, 수평 방향의 아핀 모션 보상 이미지 서브-블록이 조건 (1) 및 조건 (2)를 만족할 수 있도록 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 조정된다. 구체적으로, 수평 방향의 아핀 이미지 블록의 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배이고, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이는 사전 설정 길이의 정수배이다. 미리 설정된 길이 S는 통상적으로 4이거나, 8, 16 또는 32와 같은 값일 수 있다. 즉, S = 2n이며, 여기서 n은 0 또는 양의 정수이다. 이 솔루션은 임의 형상의 아핀 이미지 블록에 적용할 수 있다. 아핀 이미지 블록이 쿼드트리(Quad Tree) 규칙에 따라 분할될 때, 전술한 결정 조건 (1) 및 (2) 중 하나가 충족되는 경우, 다른 조건이 충족될 수 있다. 따라서 결정 조건 중 하나만 활성화/적용해야 한다. 조건 (1) 및 (2)가 충족되는지를 결정하기 위한 시퀀스 및 결정 결과에 기초하여 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하기 위한 시퀀스는 무작위로 교환될 수 있다. 구별을 위해, 제1 시간 동안 수행된 조정은 제1 조정으로 지칭될 수 있고, (필요한 경우) 제2 시간 동안 수행된 조정은 재조정으로 지칭될 수 있다.
선택적으로, 진폭 제한 동작은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이에 대해 수행되고 전술한 방식으로 결정된다. 구체적으로, 비교 방식이 사용되어, M이 하한 Tm에서 상한 W의 범위 내에 속할 수 있게 한다. Tm은 미리 설정된 값이고 일반적으로 4이며, W는 수평 방향의 아핀 이미지 블록의 길이이다.
S1203. 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 모션 벡터 차이의 제2 성분에 대한 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하고, 수직 방향의 상기 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정한다.
구체적으로, 모션 벡터 차이의 제2 성분에 대한 모션 벡터 정밀도의 비율은 모션 벡터 차이의 제2 성분에 대한 모션 벡터 정밀도의 비율이다. 비율과 제1 수직 거리의 곱은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이이며, 수직 방향으로의 초기 길이로 지칭될 수도 있다. 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이는 일부 경우 정수가 아닐 수 있음을 이해할 수 있다. 이 경우 초기 길이를 반올림해야 한다. 정밀도를 보장하기 위해 일반적으로 반올림이 수행된다. 구체적으로, 소수 부분은 직접 버려진다. 예를 들어, 초기 길이 값은 8.35(즉, 8.35 단위 픽셀의 길이)이고, 8은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이로서 직접 사용된다. 확실하게, 반올림 원리가 대안으로 사용될 수 있다. 구체적으로, 소수 부분이 5보다 작으면 반올림(rounding-down)이 수행된다. 소수 부분이 5보다 큰 경우 반올림(rounding-up)이 수행된다. 예를 들어, 길이가 8.86으로 계산되면 9가 길이로 사용된다. 효율성을 보장하기 위해 초기 길이의 최솟값은 사전 설정된 값보다 작지 않아야 하며, 예를 들어, 2, 4, 8 또는 2N과 같은 미리 설정된 값보다 작지 않아야 한다. 미리 설정된 값은 일반적으로 4로 설정된다. 초기 길이도 수직 방향의 아핀 이미지 블록의 길이보다 길지 않아야 한다. 수직 방향의 초기 길이 또는 수직 방향의 둥근 초기 길이(rounded initial length)가 적절한지는 수직 방향의 아핀 이미지 블록의 길이를 초기 길이로 나눌 수 있는지에 따라 달라진다. 수직 방향의 아핀 이미지 블록의 길이를 초기 길이로 나눌 수 있는 경우, 이는 수직 방향의 초기 길이 또는 수직 방향의 둥근 초기 길이에 기초하여 아핀 이미지 블록이 수직 방향의 정수량의 서브-블록으로 분할될 수 있음을 나타낸다. 조정 방식은 일반적으로 수직 방향의 초기 길이 또는 수직 방향의 둥근 초기 길이가 점진적으로 증가/감소하는 방법이다. 구체적으로, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니라고 결정되면, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 하나 이상의 단위 길이만큼 조정, 즉 증가/감소되고, 그런 다음 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 솔루션이 순환적으로 수행된다. 단위 길이는 일반적으로 하나의 단위 픽셀이다. 구체적으로, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 1만큼 조정, 즉 증가/감소된다. 일반성을 잃지 않고, 다시 말해, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 고정된 스텝 크기만큼 조정, 즉 증가/감소한다. 스텝 크기는 조정 값이고, 즉 사이클마다 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 데 사용되는 기본 단위 또는 진폭이다. 스텝 크기는 일반적으로 전술한 하나의 단위 픽셀이거나 다른 값, 예를 들어 2개의 픽셀 단위일 수 있다. 선택적으로, 전술한 조정에 사용된 스텝 크기/조정 값은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이의 패리티에 따라 변할 수 있다. 예를 들어, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 홀수인 경우, 홀수 스텝 크기가 선택된다. 예를 들어, 하나의 단위 길이와 같은 홀수 수량의 단위 길이가 조정을 위한 단계 크기로 사용된다. 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 짝수인 경우, 짝수 단계 크기가 선택된다. 예를 들어, 짝수의 단위 길이가 단계 크기로 사용된다.
또한, 조정이 증가인지 감소인지는 디코더 측과 인코더 측 사이의 일치에 따라 선택될 수 있고, 인코더 측에 의해 비트스트림으로 명시적으로 표시될 수 있고 명시적 지시에 기초하여 디코더 측에 의해 선택될 수 있거나 또는 주변 인접 블록의 모션 벡터 정밀도 값을 사용하여 추론될 수 있거나, 수직 방향의 아핀 이미지 블록의 길이와 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이 사이의 비율 관계에 기초하여 결정될 수 있다. 예를 들어, 비율이 임계 값보다 작으면, 감소가 선택되고; 그렇지 않으면 증가가 선택된다.
알고리즘을 단순화하고 인코딩 및 디코딩 효율을 보장하기 위해, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니라고 결정되면, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 1개의 미리 설정된 단위 길이만큼 조정되고, 그런 다음, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 전술한 솔루션이 순환적으로 수행된다.
또한, 효율을 향상시키고 동작 시간을 감소시키기 위해, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 수직 방향의 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값으로 조정될 수 있다. 예를 들어, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 7이고, 수직 방향의 아핀 이미지 블록의 길이는 16이다. 이 경우, 아핀 모션 보상 이미지 서브-블록의 길이는 수직 방향의 블록은 1씩 증가하여 16을 나눌 수 있는 8로 변경된다. 마찬가지로, 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 5인 경우, 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이는 1만큼 감소하여 16을 나눌 수 있는 4로 변경된다. 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이와 수직 방향의 아핀 이미지 블록의 길이를 나눌 수 있는 2개의 인접 값 사이의 차이가 동일한 경우, 예를 들어, 아핀 모션 보상의 길이 수직 방향으로의 이미지 서브-블록은 6이고, 수직 방향의 아핀 이미지 블록의 길이는 16이며, 길이 6에 인접하고 16을 나눌 수 있는 2개의 값은 각각 4와 8이다. 인코더 측 및 디코더 측의 요구 사항에 따라 선택될 수 있다. 예를 들어, 낮은 레이턴시가 필요한 경우, 조정, 즉 증가가 선택될 수 있다. 고품질이 필요한 경우 조정, 즉 감소가 선택된다. 이것은 본 개시에 제한되지 않는다.
또한, 단계 S1203에서, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이의 정수배가 아닌 것으로 결정될 때, 알고리즘을 더 단순화하기 위해, 동일한 테이블이 인코더 측과 디코더 측에 개별적으로 설정될 수 있고, 수직 방향의 아핀 이미지 블록의 가능한 최대 길이는 허용된 최소 제수를 시작 값, 예를 들어, 2N으로 사용하여 복수의 간격으로 분할된다. 간격 범위는 2N+i이며, 여기서
Figure 112020022500230-pct00158
이고, Wmax는 수직 방향으로 가능한 아핀 이미지 블록의 최대 길이이다. 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 속하는 구간이 결정되고, 아핀 모션 보상 화상 서브-블록의 길이가 속하는 구간의 하한값 또는 상한값은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 최종적으로 결정된 길이로서 사용된다. 하한값 또는 상한값을 얻기 위한 규칙에 대해서는 인코더 측과 디코더 측 사이의 합의를 참조한다. 근사 간격의 상한값 또는 하한값은 비트스트림을 사용하여 명시적으로 표시될 수 있거나 반올림 방식으로 선택될 수 있다. 전술한 표를 사용하여, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 최종 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이에 기초하여 테이블 룩업을 통해 결정될 수 있다. 따라서, 단계 S1203에서 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계가 교체될 수 있고, 시스템 복잡성이 감소되며, 계산 시간이 감소된다.
선택적으로, 솔루션에서의 계산 복잡성을 더 감소시키기 위해, 단계 S1203에서, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배일 뿐만 아니라 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 계산을 용이하게 하는 미리 설정된 길이 S의 정수배인지의 여부가 또한 결정될 필요가 있다. 구체적으로, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 다음 조건을 만족하는지 여부가 결정되어야 한다:
(1) 수직 방향의 아핀 이미지 블록의 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고; (2) 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 미리 설정된 길이 S의 정수배이다.
수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 2개의 조건을 만족하지 않으면, 수직 방향의 아핀 모션 보상 이미지 서브-블록이 조건 (1) 및 조건 (2)를 만족할 수 있도록 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 조정된다. 구체적으로, 수직 방향의 아핀 이미지 블록의 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배이고, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이는 사전 설정 길이의 정수배이다. 미리 설정된 길이 S는 통상적으로 4이거나, 8, 16 또는 32와 같은 값일 수 있다. 즉, S = 2n이며, 여기서 n은 0 또는 양의 정수이다. 이 솔루션은 임의 형상의 아핀 이미지 블록에 적용할 수 있다. 아핀 이미지 블록이 쿼드트리(Quad Tree) 규칙에 따라 분할될 때, 전술한 결정 조건 (1) 및 (2) 중 하나가 충족되는 경우, 다른 조건이 충족될 수 있다. 따라서 결정 조건 중 하나만 활성화/적용해야 한다. 조건 (1) 및 (2)가 충족되는지를 결정하기 위한 시퀀스 및 결정 결과에 기초하여 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하기 위한 시퀀스는 무작위로 교환될 수 있다. 구별을 위해, 제1 시간 동안 수행된 조정은 제1 조정으로 지칭될 수 있고, (필요한 경우) 제2 시간 동안 수행된 조정은 재조정으로 지칭될 수 있다.
전술한 단계 S1201 및 S1203은 3개의 제어 포인트에 기초한 솔루션 1의 시나리오에 적용 가능하다. 3개의 제어 포인트에 기초한 시나리오에서, 수평 방향 및 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 별도로 계산된다. 2개의 제어 포인트에 기초한 솔루션 2 및 솔루션 3의 시나리오에 있어서, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이 또는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 독립적으로 계산하기 위해 단계 S1201 또는 단계 S1203만이 수행될 수 있다. 그런 다음, 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이 또는 수평/수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이는 다른 방향의, 즉 수직/수평 방향의 아핀 모션 보상 이미지의 초기 길이로서 사용되고, 전술한 결정은 개별적으로 수행되며, 즉:
수직/수평 방향의 아핀 이미지 블록의 길이가 수직/수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 결정하는 단계; 또는
수직/수평 방향의 아핀 이미지 블록의 길이가 수직/수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하고, 수직/수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 사전 설정된 길이 S의 정수배인지를 결정하는 단계
를 수행한다.
2개의 제어 포인트에 기초한 솔루션 2 및 솔루션 3의 시나리오에서, 요구 사항에 따라 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이만이 3개의 제어 포인트에 대해 계산될 수 있거나 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이만이 계산될 수 있고; 그리고 아핀 모션 보상 이미지 서브-블록의 다른 크기 성분은 하나의 획득된 크기 성분, 즉 수평 방향의 길이 또는 수직 방향의 길이에 기초하여 추론되거나 계산된다. 아핀 이미지 블록의 크기가 규칙적인 2Nx2N 정사각형의 형태인 경우, 수평 방향 및 수직 방향에서의 아핀 이미지 블록의 길이가 동일하기 때문에, 수평 방향 및 수직 방향의 아핀 이미지 블록의 길이 중 하나만이 결정될 필요가 있다.
선택적으로, 진폭 제한 동작은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이에 대해 그리고 전술한 방식으로 결정된 길이에 대해 수행될 필요가 있다. 구체적으로, 비교 방식이 사용되어, M이 하한 Tm에서 상한 W의 범위 내에 속할 수 있게 한다. Tm은 미리 설정된 값이고 일반적으로 4이며, W는 수직 방향의 아핀 이미지 블록의 길이이다.
구체적으로, 획득된 모션 벡터 차이
Figure 112020022500230-pct00159
Figure 112020022500230-pct00160
는 통상적으로 비교적 작으며, 각각의 픽셀의 모션 벡터의 정밀도가 과도하게 높으며, 예를 들어, 1/32 또는 1/64이다. 지나치게 높은 모션 벡터 정밀도는 비디오의 압축 성능에 거의 기여하지 않으며 엄청난 양의 계산을 유발한다. 따라서, 아핀 블록은 각각의 아핀-MC 블록의 모션 벡터 정밀도가
Figure 112020022500230-pct00161
에 도달하도록 보장하기 위해 이전에 획득된 예상 모션 벡터 정밀도
Figure 112020022500230-pct00162
에 기초하여 복수의 아핀-MC-블록으로 분할된다.
Figure 112020022500230-pct00163
Figure 112020022500230-pct00164
중 더 작은 값은
Figure 112020022500230-pct00165
보다 작지 않다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트와 제2 제어 포인트 사이의 수평 거리는
Figure 112020022551696-pct00166
이고, 제3 제어 포인트와 제4 제어 포인트 사이의 수직 거리는
Figure 112020022551696-pct00167
인 것으로 가정하고, 아핀-MC의 폭은
Figure 112020022551696-pct00168
이거나 M으로 표시되고, 높이는
Figure 112020022551696-pct00169
이거나 N으로 표시되는 것으로 가정한다.
솔루션 1의 시나리오에서, 3개의 제어 포인트에 기초한 아핀 이미지 블록의 모션 벡터 차이를 결정하는 단계 및 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는 다음 식 (43)을 사용해서 수행되고, 즉, M 및 N은 식 (43) 또는 식 (44)에 따라 결정된다:
Figure 112020022500230-pct00170
, 및
Figure 112020022500230-pct00171
(43); 또는
Figure 112020022500230-pct00172
Figure 112020022500230-pct00173
(44)
이것은 다음과 등가이다:
Figure 112020022500230-pct00174
(45)
솔루션 2의 시나리오에서, 수평 방향의 2개의 제어 포인트에 기초한 아핀 이미지 블록의 모션 벡터 차이를 결정하는 단계 및 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는 다음 식 (46)을 사용해서 수행되고, 즉, M 및 N은 식 (43)에 따라 결정된다:
Figure 112020022500230-pct00175
(46)
이것은 다음과 등가이다:
Figure 112020022500230-pct00176
(47)
솔루션 3의 시나리오에서, 수직 방향의 2개의 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하고 아핀 모션 보상 이미지 서브-블록의 크기를 획득하는 단계는 다음 식 (48)을 사용하여 구현될 수 있고, 즉 M 및 N은 식 (48)에 따라 결정된다:
Figure 112020022500230-pct00177
(48)
이것은 다음과 등가이다:
Figure 112020022500230-pct00178
(49)
M과 N이 식 (45), 식 (47), 식 (49)에 따라 계산된 후, 알고리즘을 단순화하기 위해, M과 N이 연산을 용이하게 하는지, 즉 너비 W와 높이 H를 갖는 아핀 이미지 블록이 정수량의 아핀 모션 보상 이미지 서브-블록으로 균등하게 분할될 수 있지가 추가로 결정될 필요가 있다. 구체적으로, W를 M으로 나눌 수 있는지와 H를 N으로 나눌 수 있는지를 판정해야 한다. W를 M으로 나눌 수 없고 및/또는 H를 N으로 나눌 수 없는 경우, W 및/또는 H를 나눌 수 없는 값, 즉 W를 M으로 나눌 수 있고 H를 N으로 나눌 수 있으며, M과 N은
Figure 112020022500230-pct00179
Figure 112020022500230-pct00180
를 충족시키도록 M 및/또는 N이 조정된다.
조정 방법은 다음과 같을 수 있다:
(1) W를 M으로 나눌 수 없는 경우, W를 M으로 나눌 수 있을 때까지 M은 점차 감소/증가한다. H를 N으로 나눌 수 없는 경우, H를 N으로 나눌 수 있을 때까지 N은 점차 감소/증가한다. M = N일 때는 M 및 N 중 하나만을 조정해야 한다.
선택적으로, M의 상한 및 하한 그리고 N의 상한 및 하한은
Figure 112020022500230-pct00181
,
Figure 112020022500230-pct00182
,
Figure 112020022500230-pct00183
Figure 112020022500230-pct00184
은 통상적으로 4로 설정되도록 제한된다.
(2) 테이블 룩업 방식이 사용된다: 구성된 2차원 표에서 W와 M이 입력되고 조건을 충족하는 M이 출력되고, H와 N이 입력되고 조건에 맞는 N이 출력된다.
선택적으로, M 및 N이 식 (45), 식 (47) 및 식 (49)에 따라 계산된 후, M 및 N이 추가로 계산되어, W를 M으로 나눌 수 있고, H를 N으로 나눌 수 있고, M 및 N 각각이 S의 배수이고,
Figure 112020022500230-pct00185
Figure 112020022500230-pct00186
를 충족한다.
조정 방법은 다음과 같을 수 있다:
(1) W를 M으로 나눌 수 없거나 M이 S의 배수가 아닌 경우, W를 M으로 나눌 수 있고 M이 S의 배수가 될 때까지 M이 점차 감소한다. H를 N으로 나눌 수 없거나 N이 S의 배수가 아닌 경우 H를 N으로 나눌 수 있고 N이 S의 배수가 될 때까지 N이 점차 감소한다. S는 보통 4로 설정된다. M = N일 때, N과 M 중 하나만이 조정되어야 한다.
선택적으로, M의 상한 및 하한 그리고 N의 상한 및 하한은
Figure 112020022500230-pct00187
,
Figure 112020022500230-pct00188
,
Figure 112020022500230-pct00189
Figure 112020022500230-pct00190
은 통상적으로 4로 설정되도록 제한된다.
(2) 테이블 룩업 방식이 사용된다: 구성된 2차원 표에서 W와 M이 입력되고 조건을 충족하는 M이 출력되고, H와 N이 입력되고 조건에 맞는 N이 출력된다.
구체적으로, 전술한 솔루션은 표 1의 다음의 예시적인 알고리즘 코드를 사용하여 구현될 수 있다.
// get affine sub-block width and height
Int blockWidth = width;
Int blockHeight = height;
Int mvWx = max( abs((acMv[1] - acMv[0]).getHor()), abs((acMv[1] - acMv[0]).getVer()) ); 대응 식 (13):
Figure 112020022500230-pct00191
Int mvWy = max( abs((acMv[2] - acMv[0]).getHor()), abs((acMv[2] - acMv[0]).getVer()) ); 대응 식 (14):
Figure 112020022500230-pct00192
Int iMvPrecision = 4;#if VCEG_AZ07_MV_ADD_PRECISION_BIT_FOR_STORE
iMvPrecision -= VCEG_AZ07_MV_ADD_PRECISION_BIT_FOR_STORE;
#endif
iMvPrecision은 아핀 블록의 모션 벡터 정밀도에 대응한다.
if(mvWx) {
blockWidth = max((Int)(( width >> iMvPrecision )/mvWx ), 1 );
식 (45):

Figure 112020022500230-pct00193
while(width% blockWidth) {
blockWidth--;
}
W를 M으로 나눌 수 있도록 M을 조정한다.
blockWidth = max( AFFINE_MIN_BLOCK_SIZE, blockWidth ); } M은 4보다 작지 않도록 제한된다.
if(mvWy) {
blockHeight = max((Int)(( height >> iMvPrecision )/mvWy ), 1 );
식 (45):
Figure 112020022500230-pct00194
while(height% blockHeight) {
blockHeight--;
}
H를 N으로 나눌 수 있도록 N을 조정한다.
blockHeight = max( AFFINE_MIN_BLOCK_SIZE, blockHeight ); } 이에 상응해서, N은 4보다 작지 않도록 제한된다.
따라서, 본 개시의 이 실시예에서의 비디오 이미지 디코딩 방법에 따르면, 디코딩 장치는 결정된 아핀 이미지 블록의 모션 벡터 차이 및 모션 벡터 정밀도에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 결정한다. 제어 포인트 사이의 거리와 아핀 이미지 블록의 크기가 동일하므로, 아핀 이미지 블록이 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록으로 균등하게 분할될 수 있다. 이러한 방식으로, 방법은 하드웨어/소프트웨어를 사용하여 구현되고 복잡성이 감소된다. 본 개시에서, 인코더 측의 복잡성은 50% 감소될 수 있고, 디코더 측의 복잡도는 70% 감소될 수 있고, 성능의 90% 내지 95%가 유지된다는 실험을 사용함으로써 입증된다. 따라서, 아핀 모델에 기초한 모션 보상 예측 기술이 실제로 효과적으로 적용될 수 있다.
선택적으로, 도 13에 도시된 바와 같이, S740은 다음 단계를 포함한다:
S1301. 아핀 모션 보상 이미지 서브-블록 내의 각각의 아핀 모션 보상 이미지 서브-블록의 모션 벡터를 결정한다.
S1303. 각각의 아핀 모션 보상 이미지 서브-블록의 모션 벡터에 기초해서 각각의 아핀 모션 보상 이미지 서브-블록의 모션 보상 예측 신호를 결정한다.
S1305. 각각의 아핀 모션 보상 이미지 서브-블록의 모션 보상 예측 신호에 기초해서 각각의 아핀 모션 보상 이미지 서브-블록을 디코딩한다.
본 개시의 이 실시예에서, 각각의 아핀-MC 블록은 복수의 픽셀을 포함할 수 있고, 픽셀의 모션 벡터는 각각의 아핀-MC 블록으로부터 아핀-MC 블록의 모션 벡터로서 선택될 필요가 있음을 이해해야 한다.
선택적으로, S1301에서, 아핀-MC 블록의 중심 위치 상의 픽셀의 모션 벡터가 아핀-MC 블록의 모션 벡터로서 선택될 수 있거나, 아핀-MC 블록 내의 모든 픽셀의 모션 벡터의 평균값은 아핀-MC 블록의 모션 벡터로 사용될 수 있거나, 아핀-MC 블록 내의 좌측 상단 픽셀의 모션 벡터가 아핀-MC 블록의 모션 벡터로서 선택될 수 있다. 그렇지만, 이것은 본 개시에 제한되지 않는다.
선택적으로, 본 개시의 이 실시예에서, 각각의 아핀 모션 보상 이미지 서브-블록 내의 경계 픽셀의 신호가 필터링되고, 경계 픽셀은 각각의 아핀 모션 보상 이미지 서브-블록의 경계에서 하나 이상의 픽셀의 행이다.
선택적으로, 본 개시의 이 실시예에서, 경계 픽셀의 신호는 모션 보상 예측 신호 및/또는 재구성된 신호를 포함하고, 재구성된 신호는 모션 보상 예측 신호와 재구성된 잔차 신호의 합이다.
구체적으로, 굵은 실선 블록은 아핀 블록을 나타내고, 가는 실선 블록은 아핀-MC 블록을 나타내고, 파선 박스는 인접한 아핀-MC 블록의 경계에 있는 픽셀을 나타내고, 교차점은 픽셀을 나타낸다. 도 11의 파선 박스의 영역은 인접 아핀-MC 블록의 각 경계에서 인접한 아핀-MC 블록의 2 행 또는 2 열의 픽셀을 포함하거나, 또는 인접한 아핀-MC 블록의 각각의 경계에서 픽셀의 1 행 또는 1 열, 3 행 또는 3 열 등을 포함할 수 있다. 인접한 아핀-MC 블록의 모션 벡터는 상이할 수 있으므로, 참조 이미지로부터 획득된 예측 신호는 참조 이미지에서 인접하지 않는다. 이것은 인접한 아핀-MC 블록의 경계에서 예측 신호의 불연속을 야기하고, 잔차의 불연속을 추가로 야기하고, 잔차의 이미지 인코딩/디코딩 성능에 영향을 미친다. 따라서, 아핀-MC 블록의 경계에서 모션 보상 예측 신호를 필터링하는 것이 고려된다.
재구성된 신호는 일반적으로 모션 보상 예측 신호 및 재구성된 잔차 신호를 가산함으로써 얻어진다. 손실 인코딩은 일반적으로 잔차 신호에서 수행된다. 이것은 원래 잔차 신호에 대한 재구성된 잔차 신호의 왜곡을 야기한다. 인접한 아핀-MC 블록의 경계에서 픽셀의 왜곡 원인은 다를 수 있다. 예를 들어, 제1 아핀-MC 블록의 우측에 있는 픽셀의 값은 왜곡으로 인해 커지고 제1 아핀-MC 블록의 우측에 인접한 아핀-MC 블록의 좌측에 있는 픽셀의 값은 왜곡으로 인해 작아진다. 이는 아핀-MC 블록에서 재구성된 픽셀의 경계 픽셀 값의 불연속성을 야기하고 주관적이고 객관적인 효과를 손상시킨다. 따라서 재구성된 신호를 필터링해야 한다.
선택적으로, 본 개시의 이 실시예에서, 필터링은 저역 통과 필터를 사용함으로써 수행될 수 있으며, 따라서 경계 영역에서의 픽셀 값이 보다 부드럽게 변경된다. 예를 들어, 가우스 필터를 사용하여 필터링을 수행한다. 그렇지만, 이것은 본 개시에 제한되지 않는다.
선택적으로, 본 개시의 이 실시예에서, 필터링은 중첩된 블록 모션 보상(Overlapped block motion compensation, "OBMC"로 약칭)을 사용하여 수행될 수 있다. 필터링될 픽셀에 인접한 아핀-MC 블록의 모션 벡터를 사용하여 필터링될 픽셀에 대해 모션 보상 예측이 수행되고, 획득된 모션 보상 예측 신호 및 필터링될 픽셀의 모션 벡터를 사용하여 획득된 모션 보상 예측 신호에 대해 가중 평균이 수행되어, 최종 모션 보상 예측 신호를 획득한다.
본 개시의 이 실시예에서의 비디오 이미지 디코딩 방법에 따르면, 디코딩 장치는 결정된 아핀 이미지 블록의 모션 벡터 차이 및 아핀 이미지 블록의 모션 벡터 정밀도, 및 제어 포인트 사이의 거리에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 그리고 아핀 이미지 블록의 크기와 아핀 모션 보상 이미지 서브-블록의 크기 사이의 관계에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 추가로 조정하므로, 아핀 모션 보상 이미지 서브-블록은 구현하기 쉽고 복잡성이 감소된다. 본 개시에서, 인코더 측의 복잡도는 50% 감소될 수 있고, 디코더 측의 복잡도는 70% 감소될 수 있으며, 성능의 90% 내지 95%가 유지된다는 것이 실험을 통해 입증되었다. 따라서, 아핀 모델에 기초한 모션 보상 예측 기술이 실제로 효과적으로 적용될 수 있다.
선택적으로, 본 개시의 디코딩 방법은 또한:
아핀 이미지 블록의 모션 벡터 차이 및 아핀 이미지 블록의 모션 벡터 정밀도를 얻기 위해 비트스트림을 파싱하는 단계 - 아핀 이미지 블록의 픽셀은 동일한 아핀 변환 파라미터를 가짐 - ;
상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 디코딩 처리를 수행하는 단계
일 수 있거나; 또는
아핀 이미지 블록에 대한 정보를 얻기 위해 비트스트림을 파싱하는 단계;
상기 아핀 이미지 블록에 대한 정보에 기초하여 상기 아핀 이미지 블록의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하고, 수평 방향의 아핀 이미지 블록의 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 수직 방향의 아핀 이미지 블록의 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배임 - ; 및
아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 아핀 이미지 블록에 대한 디코딩 처리를 수행하는 단계
일 수 있다.
이러한 방식으로, 디코더 측은 재계산을 수행할 필요는 없지만, 인코더 측에 의해 디코더 측으로 전송된 파라미터를 직접 사용하여 아핀 모션 보상 이미지 서브-블록의 크기를 결정한다. 따라서 계산 복잡성이 더욱 줄어든다.
전술한 내용은 도 1 내지 도 13을 참조하여 본 개시의 실시예에 따른 비디오 이미지 디코딩 방법을 상세히 설명한다. 전술한 내용은 디코더 측 및 인코더 측에서의 이 솔루션의 구현 방식이 기본적으로 동일하다는 것을 추가로 예시한다. 이를 보다 명확하게 설명하기 위해, 이하에서는 도 14 내지 도 16을 참조하여 본 개시의 실시예에 따른 비디오 이미지 인코딩 방법을 설명한다. 인코더 측에서의 관련 동작은 디코더 측에서의 동작과 본질적으로 동일하기 때문에, 반복을 피하기 위해 구현에 대한 자세한 내용은 여기서 다시 설명되지 않는다는 점에 유의해야 한다.
도 14는 본 개시의 실시예에 따른 비디오 이미지 디코딩 방법의 개략적인 흐름도이다.
도 1에 도시된 방법은 인코딩 장치에 의해 수행될 수 있다. 예를 들어, 디코더와 유사하게, 인코더는 일반적으로 예측 프로세싱 유닛, 잔차 생성 유닛, 변환 프로세싱 유닛, 양자화 유닛, 역양자화 유닛, 역변환 프로세싱 유닛, 재구성 유닛, 필터 유닛, 디코딩된 이미지 버퍼 및 엔트로피 인코딩 유닛을 포함한다. 엔트로피 인코딩 유닛은 정규 CABAC 인코딩/디코딩 엔진 및 바이패스 인코딩/디코딩 엔진을 포함한다. 예측 처리 유닛은 인터-프레임 예측 처리 유닛 및 인트라-프레임 예측 처리 유닛을 포함한다. 인터-프레임 예측 프로세싱 유닛은 모션 추정 유닛 및 모션 보상 유닛을 포함한다. 다른 실시예에서, 인코더는 더 많거나 더 적거나 다른 기능 컴포넌트를 포함할 수 있다. 디코더와 유사하게, 본 개시의 인코딩 방법은 인터-프레임 예측 프로세싱 유닛에 의해 인터-프레임 예측을 수행하는 프로세스에 주로 적용된다. 인코더의 각 기능 유닛의 상세한 구조는 H.265 표준과 같은 종래 기술의 규정 및 설명을 참조한다. 본 개시에서는 상세한 설명이 제공되지 않는다. 본 개시에서, 이하의 실시예만이 아핀 모션 보상 이미지 서브-블록의 크기를 적응적으로 결정하고 본 개시의 이 실시예의 방법에서 인코딩을 수행하는 방법의 기본 프로세스를 설명하기 위해 사용된다.
구체적으로, 도 14에 도시된 바와 같이, 방법(1400)은 다음 단계를 포함한다:
S1410. 아핀 이미지 블록의 모션 벡터 차이를 결정한다.
S1430. 아핀 이미지 블록의 모션 벡터 정밀도를 결정한다.
S1450. 모션 벡터 차이, 모션 벡터 정밀도, 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 아핀 이미지 블록의 크기에 기초하여 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 수평 방향의 상기 아핀 이미지 블록의 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 수직 방향의 아핀 이미지 블록의 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀이다.
S1470. 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 아핀 이미지 블록에 대한 인코딩 처리를 수행한다.
구체적으로, 인코딩 장치는 결정된 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하고, 아핀 이미지 블록의 모션 벡터 정밀도를 결정하고, 아핀 이미지에서 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 결정된 모션 벡터 차이 및 모션 벡터 정밀도, 제어 포인트 사이의 거리, 및 아핀 이미지 블록의 크기에 기초하여, 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 아핀 모션 보상 이미지 서브-블록의 크기는 아핀 이미지 블록을 분할하는 데 사용되는 크기이고, 아핀 이미지 블록은 분할 크기에 기초하여 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록으로 분할된다. 그런 다음, 인코딩 장치는 아핀 모션 보상 화상 서브-블록에 기초하여 아핀 이미지 블록을 인코딩한다.
그러므로 본 개시의 이 실시예에서 비디오 이미지 인코딩 방법을 수행함으로써, 인터-프레임 예측 프로세싱 유닛은 결정된 모션 벡터 차이 및 모션 벡터 정밀도, 제어 포인트 사이의 거리 및 아핀 이미지 블록의 크기에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 아핀 이미지 블록을 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 동일한 크기를 갖는 복수의 아핀 모션 보상 서브-이미지로 분할하고, 그런 다음 인코딩 처리를 수행한다. 따라서, 인코딩 프로세스에서, 전술한 파라미터의 변화에 기초하여 적절한 크기를 갖는 아핀 모션 보상 이미지 서브-블록이 적응적으로 선택될 수 있고, 인코딩 복잡성이 감소되며, 인코딩 성능, 즉 압축 효율이 개선된다.
바람직하게는, S1410은:
동일한 수평선 상에 위치하는 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제1 성분을 결정하는 단계; 그리고/또는
동일한 수평선 상에 위치하는 제3 제어 포인트의 모션 벡터와 제3 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제2 성분을 결정하는 단계
를 포함한다.
제1 제어 포인트와 제2 제어 포인트 사이에 제1 수평 거리가 있고, 제3 제어 포인트와 제4 제어 포인트 사이에 제1 수직 거리가 있다. 단계 S1410에 포함된 솔루션에서 및/또는은 구체적으로 다음의 3가지 다른 기술적 솔루션을 나타낸다는 점에 유의해야 한다.
솔루션 1: 3개의 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하는 방법은:
동일한 수평선 상에 위치하는 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제1 성분을 결정하고, 동일한 수직선 상에 위치하는 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 차이에 기초하여 제2 성분을 결정하는 단계
를 포함한다.
솔루션 2: 수평 방향의 2개의 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하는 방법은: 동일한 수평선 상에 위치하는 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제1 성분을 결정하는 단계를 포함한다.
솔루션 3: 수직 방향의 2개의 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하는 방법은: 동일한 수직선 상에 위치하는 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제2 성분을 결정하는 단계를 포함한다.
본 개시의 이 실시예에서, 모션 벡터 차이의 제1 성분은 모션 벡터 차이의 수평 성분이고, 모션 벡터 차이의 제2 성분은 모션 벡터 차이의 수직 성분이라는 것을 이해해야 한다. 솔루션 1에서, 모션 벡터 차이의 제1 성분 및 모션 벡터 차이의 제2 성분은 아핀 이미지 블록의 모션 벡터 차이를 공동으로 반영한다. 그렇지만, 솔루션 2 및 솔루션 3에서, 모션 벡터 차이의 제1 성분 및 모션 벡터 차이의 제2 성분은 아핀 이미지 블록의 모션 벡터 차이를 독립적으로 반영한다. 다시 말해, 솔루션 1에서, 아핀 이미지 블록의 모션 벡터 차이는 모션 벡터 차이의 제1 성분 및 모션 벡터 차이의 제2 성분을 포함하고; 솔루션 2에서, 아핀 이미지 블록의 모션 벡터 차이는 모션 벡터 차이의 제1 성분을 포함하고; 솔루션 3에서, 아핀 이미지 블록의 모션 벡터 차이는 모션 벡터 차이의 제2 성분을 포함한다. 또한, 본 개시의 이 실시예에서, 제1, 제2, 제3 및 제4는 픽셀을 구별하기 위해서만 사용되며 본 개시의 보호 범위에 대한 어떠한 제한도 구성해서는 안 된다는 것을 이해해야 한다. 예를 들어, 제1 제어 포인트는 또한 제2 제어 포인트로 지칭될 수 있고, 제2 제어 포인트는 제1 제어 포인트로 지칭될 수 있다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트 및 제3 제어 포인트는 동일한 픽셀이다. 구체적으로, 3개의 제어 포인트가 선택되고, 3개의 제어 포인트 중 하나가 다른 2개의 제어 포인트 중 하나와 동일한 수평선 상에 위치하고 마지막 제어 포인트와 동일한 수직선 상에 위치하는다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트, 제2 제어 포인트, 제3 제어 포인트 및 제4 제어 포인트는 아핀 블록의 정점이다. 아핀 블록에서 4개의 정점은 각각 좌측 상단 정점, 좌측 하단 정점, 우측 상단 정점 및 우측 하단 정점으로 표시되는 것으로 가정한다.
솔루션 1에서, 아핀 블록의 모션 벡터 차이를 결정하기 위해 2개의 직교 방향의 3개의 정점이 선택될 수 있다. 예를 들어, 좌측 상단 정점, 좌측 하단 정점 및 우측 상단 정점을 선택하거나 좌측 상단 정점, 우측 상단 정점 및 우측 하단 정점을 선택할 수 있다.
솔루션 2에서, 동일한 수평선 상에 위치하는 임의의 2개의 정점이 아핀 블록의 모션 벡터 차이를 결정하도록 선택될 수 있다. 예를 들어, 좌측 상단 정점과 우측 상단 정점을 선택하거나 좌측 하단 정점과 우측 하단 정점을 선택할 수 있다.
솔루션 3에서, 동일한 수직선 상에 위치하는 임의의 2개의 정점이 아핀 블록의 모션 벡터 차이를 결정하기 위해 선택될 수 있다. 예를 들어, 좌측 상단 정점과 좌측 하단 정점을 선택하거나 우측 상단 정점과 우측 하단 정점을 선택할 수 있다. 이것은 본 개시에 제한되지 않는다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트의 모션 벡터 및 제2 제어 포인트의 모션 벡터의 성분들 사이에서 두 방향(수평 방향 및 수직 방향, 또는 x 방향 및 y 방향으로 지칭됨) 중 어느 하나에 있는 성분들 사이의 차이는 아핀 블록의 모션 벡터 차이의 제1 성분으로 결정될 수 있고, 제3 제어 포인트의 모션 벡터 및 제4 제어 포인트의 모션 벡터의 성분들 사이에서 두 방향 중 어느 하나에 있는 차이는 아핀 블록의 모션 벡터 차이의 제2 성분으로서 결정될 수 있다. 모션 벡터 차이를 결정하는 방식은 솔루션 1, 2 및 3에 적용 가능하다. 대안으로, 인코딩 복잡성 및 인코딩 성능에 대한 실제 요구 사항에 따라, 두 방향에서 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터의 성분들 사이의 2개의 차이 사이의 값은 제1 성분으로서 선택 및 결정될 수 있고, 두 방향에서 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터의 성분들 사이의 2개의 차이 사이의 값이 제2 성분으로서 선택 및 결정될 수 있다. 이것은 본 개시에 제한되지 않는다.
제1 제어 포인트 내지 제4 제어 포인트 각각의 모션 벡터는 일반적으로 2개의 성분, 즉 수평 성분 및 수직 성분을 포함한다. 따라서, 전술한 단계들에서, 동일한 수평선 상에 위치하는 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제1 성분을 결정하고, 동일한 수직선 상에 위치하는 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 차이에 기초하여 모션 벡터 차이의 제2 성분을 결정하는 단계는 구체적으로 다음과 같은 방식:
상기 제1 제어 포인트의 모션 벡터와 상기 제2 제어 포인트의 모션 벡터 사이의 제1 수평 성분 차이 및 제1 수직 성분 차이를 결정하고, 상기 제1 수평 성분 차이와 상기 제1 수직 성분 차이 중 더 큰 것을 모션 벡터 차이의 제1 성분으로서 결정하는 단계; 및
이에 상응해서 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 제2 수평 성분 차이와 제2 수직 성분 차이를 결정하고, 제2 수평 성분 차이와 제2 수직 성분 차이 중 더 큰 것을 모션 벡터 차이의 제2 성분으로서 결정하는 단계
에 의해 실행될 수 있다.
선택적으로, 본 개시의 이 실시예에서, 모션 벡터 차이는 아핀 모델에 기초하여 획득되며, 즉 모션 벡터 차이는 아핀 이미지 블록에서 픽셀의 아핀 변환 파라미터를 결정함으로써 획득된다. 아핀 이미지 블록의 픽셀들은 동일한 아핀 변환 파라미터를 갖는다는 것을 주목해야 한다.
이에 대응하여, 제1 제어 포인트의 모션 벡터와 제2 제어 포인트의 모션 벡터 사이의 제1 수평 성분 차이 및 제1 수직 성분 차이를 결정하는 전술한 단계는 구체적으로: 아핀 변환 파라미터 및 제1 수평 거리에 기초하여 제1 수평 성분 차이 및 제1 수직 성분 차이를 결정하는 단계이고; 제3 제어 포인트의 모션 벡터와 제4 제어 포인트의 모션 벡터 사이의 제2 수평 성분 차이 및 제2 수직 성분 차이를 결정하는 단계는 구체적으로: 아핀 변환 파라미터와 제1 수직 거리에 기초하여 제2 수평 성분 차이 및 제2 수직 성분 차이를 결정하는 단계이다.
전술한 프로세스의 시퀀스 번호는 실행 시퀀스를 나타내지 않는다는 것을 이해해야 한다. 프로세스의 실행 순서는 프로세스의 기능 및 내부 로직에 기초하여 결정되어야 하고, 본 개시의 이 실시예의 구현 프로세스에 대한 어떠한 제한도 구성해서는 안 된다.
선택적으로, 본 개시의 이 실시예에서, 아핀 변환 모델은 종래 기술의 6-파라미터 아핀 변환 모델일 수 있거나, 종래 기술의 4-파라미터 또는 2-파라미터 아핀 변환 모델일 수 있다. 6-파라미터 아핀 변환 모델은 주로 세 가지 제어 포인트를 기반으로 하는 솔루션 1의 시나리오에 적용되며, 4-파라미터 아핀 변환 모델은 주로 두 가지 제어 포인트를 기반으로 솔루션 2 및 솔루션 3의 시나리오에 적용된다. 구체적인 내용은 본 명세서의 디코딩 방법에 대한 설명을 참조한다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트의 모션 벡터, 제2 제어 포인트의 모션 벡터, 제3 제어 포인트의 모션 벡터 및 제4 제어 포인트의 모션 벡터가 결정되어, 아핀 이미지 블록의 모션 벡터 차이를 결정할 수 있다.
이에 대응하여, 솔루션 1의 시나리오에서, 제1 제어 포인트의 모션 벡터의 수평 성분과 제2 제어 포인트의 모션 벡터의 수평 성분 사이의 차이는 제1 수평 성분 차이로 결정되고; 제1 제어 포인트의 모션 벡터의 수직 성분과 제2 제어 포인트의 모션 벡터의 수직 성분 간의 차이는 제1 수직 성분 차이로서 결정되고; 제3 제어 포인트의 모션 벡터의 수평 성분과 제4 제어 포인트의 모션 벡터의 수평 성분 간의 차이는 제2 수평 성분 차이로서 결정되고; 그리고 제3 제어 포인트의 모션 벡터의 수직 성분과 제4 제어 포인트의 모션 벡터의 수직 성분 간의 차이는 제2 수직 성분 차이로서 결정된다.
솔루션 2의 시나리오에서, 제1 제어 포인트의 모션 벡터의 수평 성분과 제2 제어 포인트의 모션 벡터의 수평 성분 간의 차이는 제1 수평 성분 차이로서 결정되고; 그리고 제1 제어 포인트의 모션 벡터의 수직 성분과 제2 제어 포인트의 모션 벡터의 수직 성분 사이의 차이는 제1 수직 성분 차이로서 결정된다.
솔루션 3의 시나리오에서, 제3 제어 포인트의 모션 벡터의 수평 성분과 제4 제어 포인트의 모션 벡터의 수평 성분 간의 차이는 제2 수평 성분 차이로서 결정되고; 그리고 제3 제어 포인트의 모션 벡터의 수직 성분과 제4 제어 포인트의 모션 벡터의 수직 성분 간의 차이는 제2 수직 성분 차이로서 결정된다.
구체적으로, 제어 포인트의 모션 벡터가 직접 결정될 수 있고, 아핀 블록의 모션 벡터 차이의 제1 성분 및 제2 성분은 모션 벡터의 성분 간의 차이를 계산함으로써 직접적으로 얻을 수 있다.
선택적으로, 본 개시의 이 실시예에서, 제1 제어 포인트 및 제2 제어 포인트는 2개의 인접 픽셀이고, 제3 제어 포인트 및 제4 제어 포인트는 2개의 인접 픽셀이다. 다시 말해, 제어 포인트는 반드시 아핀 이미지 블록에서 정점이라고도 하는 4개의 코너 포인트로부터 선택될 필요는 없지만, 시그널링을 사용하여 비트스트림으로 명시적으로 표시되거나, 주변 아핀 이미지 블록의 제어 포인트에 기초하여 추정 또는 복제를 통해 획득되는, 아핀 이미지 블록의 임의의 위치에서 인코더 측 및 디코더 측에 의해 공동으로 설정되는 포인트일 수 있다. 이 경우, 제1 수평 성분 차이, 제1 수직 성분 차이, 제2 수평 성분 차이 및 제2 수직 성분 차이를 결정하는 것은 구체적으로 다음과 같다:
제1 픽셀의 모션 벡터, 제2 픽셀의 모션 벡터 및 제3 픽셀의 모션 벡터가 결정되며, 여기서 제1 픽셀, 제2 픽셀 및 제3 픽셀은 서로 겹치지 않는 픽셀이며; 제1 픽셀과 제2 픽셀 사이의 제2 수평 거리 및 제2 수직 거리가 결정되고; 제1 픽셀과 제3 픽셀 사이의 제3 수평 거리 및 제3 수직 거리가 결정되고; 제1 수평 성분 차이, 제1 수직 성분 차이, 제2 수평 성분 차이 및 제2 수직 성분 차이는 제1 픽셀의 모션 벡터, 제2 픽셀의 모션 벡터, 제3 픽셀의 모션 벡터, 제2 수평 거리, 제2 수직 거리, 제3 수평 거리 및 제3 수직 거리에 기초해서 결정된다. 전술한 것은 3개의 제어 포인트에 기초한 솔루션 1을 예로 사용하여 설명된다. 전술한 예로부터, 2개의 제어 포인트에 기초한 솔루션 2 또는 솔루션 3과 3개의 제어 포인트에 기초한 솔루션 1의 차이는 다음과 같다는 것을 알 수 있다: 솔루션 1의 제1 성분 차이 또는 제2 성분 차이만이 2개의 제어 포인트에 기초한 아핀 이미지 블록의 모션 벡터 차이로서 사용된다.
선택적으로, 본 개시의 이 실시예에서, 인코딩 장치는 모션 추정 및 검색을 통해 모든 제어 포인트의 모션 벡터를 얻을 수 있거나, 주변 이미지 블록에 기초하여 모든 제어 포인트의 모션 벡터를 얻을 수 있거나, 또는 아핀 변환 모델에 기초한 모든 제어 포인트의 모션 벡터를 계산할 수 있다. 대안으로, 인코딩 장치는 모션 추정 및 검색을 통해 일부 제어 포인트의 모션 벡터를 획득하고, 인접한 이미지 블록에 기초하여 다른 제어 포인트의 모션 벡터를 획득할 수도 있다. 대안으로, 인코딩 장치는 아핀 모션 추정 및 검색을 통해 일부 제어 포인트의 모션 벡터를 획득하고, 아핀 변환 모델에 기초하여 다른 제어 포인트의 모션 벡터를 계산할 수 있다. 대안으로, 인코딩 장치는 인접 이미지 블록에 기초하여 일부 제어 포인트의 모션 벡터를 획득하고, 아핀 변환 모델에 기초하여 다른 제어 포인트의 모션 벡터를 계산할 수도 있다. 그렇지만, 이것은 본 개시에 제한되지 않는다.
선택적으로, S1430에서, 제1 미리 설정된 값은 아핀 이미지 블록의 모션 벡터 정밀도로서 결정될 수 있거나; 또는 아핀 이미지 블록의 모션 벡터 정밀도는 아핀 이미지 블록의 인접한 이미지 블록의 특징에 기초하여 결정될 수 있다. 인접한 이미지 블록은 공간 및/또는 시간에서 아핀 이미지 블록에 인접한 이미지 블록이다.
선택적으로, 도 15에 도시된 바와 같이, S1450은 구체적으로 다음을 포함한다.
S1501. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 모션 벡터 차이의 제1 성분에 대한 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하고, 상기 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정한다.
구체적으로, 모션 벡터 차이의 제1 성분에 대한 모션 벡터 정밀도의 비율은 모션 벡터 차이의 제1 성분에 대한 모션 벡터 정밀도의 비율이다. 비율 및 제1 수평 거리의 곱은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이이고, 수평 방향으로 초기 길이라고도 할 수 있다. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이는 일부 경우 정수가 아닐 수 있음을 이해할 수 있다. 이 경우 초기 길이를 반올림해야 한다. 정밀도를 보장하기 위해 일반적으로 반올림이 수행된다. 구체적으로, 소수 부분은 직접 버려진다. 예를 들어, 초기 길이 값은 8.35(즉, 8.35 단위 픽셀의 길이)이고, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이로서 8이 직접 사용된다. 확실하게, 반올림 원리가 대안으로 사용될 수 있다. 구체적으로, 소수 부분이 5보다 작으면 반올림(rounding-down)이 수행되고, 소수 부분이 5보다 크면 반올림(rounding-up)이 수행된다. 예를 들어, 길이가 8.86으로 계산되면 9가 길이로 사용된다. 효율성을 보장하기 위해 초기 길이의 최솟값은 사전 설정된 값보다 낮으면 안 되며, 예를 들어, 2, 4, 8 또는 2N과 같은 미리 설정된 값보다 낮으면 안 된다. 미리 설정된 값은 일반적으로 4로 설정된다. 초기 길이도 수평 방향의 아핀 이미지 블록의 길이보다 크지 않아야 한다. 수평 방향의 초기 길이 또는 수평 방향의 둥근 초기 길이가 적절한지는 수평 방향의 아핀 이미지 블록의 길이가 초기 길이로 나눌 수 있는지에 따라 달라진다. 수평 방향의 아핀 이미지 블록의 길이가 초기 길이로 나눌 수 있는 경우, 이는 아핀 이미지 블록이 수평 방향의 초기 길이 또는 수평 방향의 둥근 초기 길이에 기초하여 수평 방향의 정수량의 서브-블록으로 분할될 수 있음을 나타낸다. 조정 방식은 일반적으로 수평 방향의 초기 길이 또는 수평 방향의 둥근 초기 길이가 점차 증가/감소하는 방법이다. 구체적으로, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니라고 결정되면, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 하나 이상의 단위 길이만큼 조정, 즉 증가/감소되고, 그런 다음, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 전술한 솔루션이 순환적으로 수행된다. 단위 길이는 일반적으로 하나의 단위 픽셀이다. 구체적으로, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 1만큼 조정, 즉 증가/감소된다. 일반성을 잃지 않고, 다시 말해, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 고정된 스텝 크기만큼 조정, 즉 증가/감소한다. 스텝 크기는 조정 값, 즉 각 사이클에서 수평 방향으로 아핀 모션 보상 화상 서브-블록의 길이를 조정하는 데 사용되는 기본 단위 또는 진폭이다. 스텝 크기는 일반적으로 전술한 하나의 단위 픽셀이거나 다른 값, 예를 들어 2개의 픽셀 단위일 수 있다. 선택적으로, 전술한 조정에 사용된 스텝 크기/조정 값은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이의 패리티에 따라 변할 수 있다. 예를 들어, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 홀수인 경우, 홀수 스텝 크기가 선택된다. 예를 들어, 하나의 단위 길이와 같은 홀수 수량의 단위 길이가 조정을 위한 단계 크기로 사용된다. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 짝수인 경우, 짝수 단계 크기가 선택된다. 예를 들어, 짝수의 단위 길이가 단계 크기로 사용된다.
또한, 조정이 증가인지 감소인지는 디코더 측과 인코더 측 사이의 합의에 따라 선택될 수 있고, 비트스트림에서 인코더 측에 의해 명시적으로 지시될 수 있고 명시적 지시에 기초하여 디코더 측에 의해 선택될 수 있으며, 주변 인접 블록의 모션 벡터 정밀도 값을 사용하여 추론될 수 있거나, 수평 방향의 아핀 이미지 블록의 길이와 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이 사이의 비율 관계에 기초하여 결정될 수 있다. 예를 들어, 비율이 임계 값보다 작으면, 감소가 선택되고; 그렇지 않으면 증가가 선택된다.
알고리즘을 단순화하고 인코딩 및 디코딩 효율을 보장하기 위해, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니라고 결정되면, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 조정되고, 즉 하나의 미리 설정된 단위 길이만큼 증가하고, 그런 다음 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 전술한 솔루션이 순환적으로 수행된다.
또한, 효율을 향상시키고 동작 시간을 감소시키기 위해, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 수평 방향의 아핀 이미지 블록의 길이가 나눌 수 있는 가장 가까운 값으로 조정될 수 있다. 예를 들어, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 7이고, 수평 방향의 아핀 이미지 블록의 길이는 16이다. 이 경우, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 블록은 1씩 증가하여 16을 나눌 수 있는 8로 변경된다. 마찬가지로, 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 5인 경우, 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이는 1만큼 감소하여 16을 나눌 수 있는 4로 변경된다. 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이와 수평 방향의 아핀 이미지 블록의 길이를 나눌 수 있는 2개의 인접한 값 사이의 차이가 같으면, 예를 들어, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 6이고, 수평 방향의 아핀 이미지 블록의 길이가 16이고, 길이 6에 인접하고 16을 나눌 수 있는 2개의 값이 각각 4와 8이면, 조정은 인코더 측 및 디코더 측의 요구 사항에 따라 선택될 수 있다. 예를 들어, 낮은 레이턴시가 필요한 경우, 조정, 즉 증가가 선택될 수 있다. 고품질이 필요한 경우 조정, 즉 감소가 선택된다. 이것은 본 개시에 제한되지 않는다.
또한, 단계 S1501에서, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아닌 것으로 판정되는 경우, 알고리즘을 더 단순화하기 위해, 동일한 테이블이 인코더 측과 디코더 측에 개별적으로 설정될 수 있고, 수평 방향의 아핀 이미지 블록의 가능한 최대 길이는 허용된 최소 제수를 시작 값, 예를 들어, 2N으로 사용하여 복수의 간격으로 분할된다. 간격 범위는 2N+i이며, 여기서
Figure 112020022551696-pct00195
이고, Wmax는 수평 방향의 가능한 아핀 이미지 블록의 최대 길이이다. 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 속하는 구간이 결정되고, 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 속하는 구간의 하한값 또는 상한값은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 최종적으로 결정된 길이로서 사용된다. 하한값 또는 상한값을 얻기 위한 규칙에 대해서는 인코더 측과 디코더 측 사이의 합의를 참조한다. 근사 간격의 상한값 또는 하한값은 비트스트림을 사용하여 명시적으로 표시될 수 있거나 반올림 방식으로 선택될 수 있다. 전술한 표를 사용하여, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 최종 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이에 기초하여 테이블 룩업을 통해 결정될 수 있다. 따라서, 단계 S1501에서 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계가 교체될 수 있고, 시스템 복잡성이 감소되며, 계산 시간이 감소된다.
선택적으로, 솔루션에서의 계산 복잡도를 추가로 감소시키기 위해, 단계 S1501에서, 수평 방향의 아핀 이미지 블록의 길이가 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배라는 것이 결정될 뿐만 아니라, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 계산을 용이하게 하는 미리 설정된 길이 S의 정수배인지 또한 결정될 필요가 있다. 구체적으로, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 다음 조건을 만족하는지가 결정될 필요가 있다:
(1) 수평 방향의 아핀 이미지 블록의 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고; 그리고(2) 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 미리 설정된 길이 S의 정수배이다.
수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 2개의 조건을 만족하지 않으면, 수평 방향의 아핀 모션 보상 이미지 서브-블록이 조건 (1) 및 조건 (2)를 만족할 수 있도록 수평 방향의 아핀 모션 보상 화상 서브-블록의 길이가 조정된다. 구체적으로, 수평 방향의 아핀 이미지 블록의 길이는 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배이고, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이는 사전 설정 길이의 정수배이다. 미리 설정된 길이 S는 통상적으로 4이거나, 8, 16 또는 32와 같은 값일 수 있다. 즉, S = 2n이며, 여기서 n은 0 또는 양의 정수이다. 이 솔루션은 임의 형상의 아핀 이미지 블록에 적용할 수 있다. 아핀 이미지 블록이 쿼드트리(Quad Tree) 규칙에 따라 분할될 때, 전술한 결정 조건 (1) 및 (2) 중 하나가 충족되는 경우, 다른 조건이 충족될 수 있다.
선택적으로, 진폭 제한 동작은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이에 대해 수행되고 전술한 방식으로 결정된다. 구체적으로, 비교 방식이 사용되어, M이 하한 Tm에서 상한 W의 범위 내에 속할 수 있게 한다. Tm은 미리 설정된 값이고 일반적으로 4이며, W는 수평 방향의 아핀 이미지 블록의 길이이다.
S1503. 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 모션 벡터 차이의 제2 성분에 대한 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하고, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정한다.
구체적으로, 모션 벡터 차이의 제2 성분에 대한 모션 벡터 정밀도의 비율은 모션 벡터 차이의 제2 성분에 대한 모션 벡터 정밀도의 비율이다. 비율과 제1 수직 거리의 곱은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이이며, 수직 방향으로의 초기 길이로 지칭될 수도 있다. 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이는 일부 경우 정수가 아닐 수 있음을 이해할 수 있다. 이 경우 초기 길이를 반올림해야 한다. 정밀도를 보장하기 위해 일반적으로 반올림이 수행된다. 구체적으로, 소수 부분은 직접 버려진다. 예를 들어, 초기 길이 값은 8.35(즉, 8.35 단위 픽셀의 길이)이고, 8은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이로서 직접 사용된다. 확실하게, 반올림 원리가 대안으로 사용될 수 있다. 구체적으로, 소수 부분이 5보다 작으면 반올림(rounding-down)이 수행된다. 소수 부분이 5보다 큰 경우 반올림(rounding-up)이 수행된다. 예를 들어, 길이가 8.86으로 계산되면 9가 길이로 사용된다. 효율성을 보장하기 위해 초기 길이의 최솟값은 사전 설정된 값보다 작지 않아야 하며, 예를 들어, 2, 4, 8 또는 2N과 같은 미리 설정된 값보다 작지 않아야 한다. 미리 설정된 값은 일반적으로 4로 설정된다. 초기 길이도 수직 방향의 아핀 이미지 블록의 길이보다 길지 않아야 한다. 수직 방향의 초기 길이 또는 수직 방향의 둥근 초기 길이(rounded initial length)가 적절한지는 수직 방향의 아핀 이미지 블록의 길이를 초기 길이로 나눌 수 있는지에 따라 달라진다. 수직 방향의 아핀 이미지 블록의 길이를 초기 길이로 나눌 수 있는 경우, 이는 수직 방향의 초기 길이 또는 수직 방향의 둥근 초기 길이에 기초하여 아핀 이미지 블록이 수직 방향의 정수량의 서브-블록으로 분할될 수 있음을 나타낸다. 조정 방식은 일반적으로 수직 방향의 초기 길이 또는 수직 방향의 둥근 초기 길이가 점진적으로 증가/감소하는 방법이다. 구체적으로, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니라고 결정되면, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 하나 이상의 단위 길이만큼 조정, 즉 증가/감소되고, 그런 다음 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 솔루션이 순환적으로 수행된다. 단위 길이는 일반적으로 하나의 단위 픽셀이다. 구체적으로, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 1만큼 조정, 즉 증가/감소된다. 일반성을 잃지 않고, 다시 말해, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 고정된 스텝 크기만큼 조정, 즉 증가/감소한다. 스텝 크기는 조정 값이고, 즉 사이클마다 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 데 사용되는 기본 단위 또는 진폭이다. 스텝 크기는 일반적으로 전술한 하나의 단위 픽셀이거나 다른 값, 예를 들어 2개의 픽셀 단위일 수 있다. 선택적으로, 전술한 조정에 사용된 스텝 크기/조정 값은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이의 패리티에 따라 변할 수 있다. 예를 들어, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 홀수인 경우, 홀수 스텝 크기가 선택된다. 예를 들어, 하나의 단위 길이와 같은 홀수 수량의 단위 길이가 조정을 위한 단계 크기로 사용된다. 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이가 짝수인 경우, 짝수 단계 크기가 선택된다. 예를 들어, 짝수의 단위 길이가 단계 크기로 사용된다.
또한, 조정이 증가인지 감소인지는 디코더 측과 인코더 측 사이의 일치에 따라 선택될 수 있고, 인코더 측에 의해 비트스트림으로 명시적으로 표시될 수 있고 명시적 지시에 기초하여 디코더 측에 의해 선택될 수 있거나 또는 주변 인접 블록의 모션 벡터 정밀도 값을 사용하여 추론될 수 있거나, 수직 방향의 아핀 이미지 블록의 길이와 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이 사이의 비율 관계에 기초하여 결정될 수 있다. 예를 들어, 비율이 임계 값보다 작으면, 감소가 선택되고; 그렇지 않으면 증가가 선택된다.
알고리즘을 단순화하고 인코딩 및 디코딩 효율을 보장하기 위해, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니라고 결정되면, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 1개의 미리 설정된 단위 길이만큼 조정되고, 그런 다음, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 전술한 솔루션이 순환적으로 수행된다.
또한, 효율을 향상시키고 동작 시간을 감소시키기 위해, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 수직 방향의 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값으로 조정될 수 있다. 예를 들어, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 7이고, 수직 방향의 아핀 이미지 블록의 길이는 16이다. 이 경우, 아핀 모션 보상 이미지 서브-블록의 길이는 수직 방향의 블록은 1씩 증가하여 16을 나눌 수 있는 8로 변경된다. 마찬가지로, 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 5인 경우, 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이는 1만큼 감소하여 16을 나눌 수 있는 4로 변경된다. 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이와 수직 방향의 아핀 이미지 블록의 길이를 나눌 수 있는 2개의 인접 값 사이의 차이가 동일한 경우, 예를 들어, 아핀 모션 보상의 길이 수직 방향으로의 이미지 서브-블록은 6이고, 수직 방향의 아핀 이미지 블록의 길이는 16이며, 길이 6에 인접하고 16을 나눌 수 있는 2개의 값은 각각 4와 8이다. 인코더 측 및 디코더 측의 요구 사항에 따라 선택될 수 있다. 예를 들어, 낮은 레이턴시가 필요한 경우, 조정, 즉 증가가 선택될 수 있다. 고품질이 필요한 경우 조정, 즉 감소가 선택된다. 이것은 본 개시에 제한되지 않는다.
또한, 단계 S1503에서, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이의 정수배가 아닌 것으로 결정될 때, 알고리즘을 더 단순화하기 위해, 동일한 테이블이 인코더 측과 디코더 측에 개별적으로 설정될 수 있고, 수직 방향의 아핀 이미지 블록의 가능한 최대 길이는 허용된 최소 제수를 시작 값, 예를 들어, 2N으로 사용하여 복수의 간격으로 분할된다. 간격 범위는 2N+i이며, 여기서
Figure 112020022500230-pct00196
이고, Wmax는 수직 방향으로 가능한 아핀 이미지 블록의 최대 길이이다. 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 속하는 구간이 결정되고, 아핀 모션 보상 화상 서브-블록의 길이가 속하는 구간의 하한값 또는 상한값은 수직 방향의 아핀 모션 보상 이미지 서브-블록의 최종적으로 결정된 길이로서 사용된다. 하한값 또는 상한값을 얻기 위한 규칙에 대해서는 인코더 측과 디코더 측 사이의 합의를 참조한다. 근사 간격의 상한값 또는 하한값은 비트스트림을 사용하여 명시적으로 표시될 수 있거나 반올림 방식으로 선택될 수 있다. 전술한 표를 사용하여, 수평 방향의 아핀 모션 보상 이미지 서브-블록의 최종 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 초기 길이에 기초하여 테이블 룩업을 통해 결정될 수 있다. 따라서, 단계 S1203에서 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계가 교체될 수 있고, 시스템 복잡성이 감소되며, 계산 시간이 감소된다.
선택적으로, 솔루션에서의 계산 복잡성을 더 감소시키기 위해, 단계 S1503에서, 수직 방향의 아핀 이미지 블록의 길이가 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배일 뿐만 아니라 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 계산을 용이하게 하는 미리 설정된 길이 S의 정수배인지의 여부가 또한 결정될 필요가 있다. 구체적으로, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이가 다음 조건을 만족하는지 여부가 결정되어야 한다:
(1) 수직 방향의 아핀 이미지 블록의 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고; (2) 수직 방향의 아핀 모션 보상 이미지 서브-블록의 길이는 미리 설정된 길이 S의 정수배이다.
수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 2개의 조건을 만족하지 않으면, 수직 방향의 아핀 모션 보상 이미지 서브-블록이 조건 (1) 및 조건 (2)를 만족할 수 있도록 수직 방향의 아핀 모션 보상 화상 서브-블록의 길이가 조정된다. 구체적으로, 수직 방향의 아핀 이미지 블록의 길이는 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배이고, 수직 방향의 아핀 모션 보상 이미지 서브-블록의 조정된 길이는 사전 설정 길이의 정수배이다. 미리 설정된 길이 S는 통상적으로 4이거나, 8, 16 또는 32와 같은 값일 수 있다. 즉, S = 2n이며, 여기서 n은 0 또는 양의 정수이다. 이 솔루션은 임의 형상의 아핀 이미지 블록에 적용할 수 있다. 아핀 이미지 블록이 쿼드트리(Quad Tree) 규칙에 따라 분할될 때, 전술한 결정 조건 (1) 및 (2) 중 하나가 충족되는 경우, 다른 조건이 충족될 수 있다.
선택적으로, 진폭 제한 동작은 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이에 대해 수행되고 전술한 방식으로 결정된다. 구체적으로, 비교 방식이 사용되어, M이 하한 Tm에서 상한 W의 범위 내에 속할 수 있게 한다. Tm은 미리 설정된 값이고 일반적으로 4이며, W는 수직 방향의 아핀 이미지 블록의 길이이다.
아핀 모션 보상 이미지 서브-블록의 크기를 결정하고 조정하는 구체적인 구현에 대해서는, 본 명세서에서의 디코딩 방법의 구체적인 설명을 참조한다.
따라서, 본 개시의 이 실시예에서의 비디오 이미지 인코딩 방법에 따르면, 인코딩 장치는 결정된 모션 벡터 차이 및 아핀 이미지 블록의 모션 벡터 정밀도, 및 제어 포인트 사이의 거리에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 결정하고, 아핀 이미지 블록의 크기와 아핀 모션 보상 이미지 서브-블록의 크기 사이의 관계에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 더 조정하므로, 아핀 모션 보상 이미지 서브-블록의 크기는 구현하기 쉽고 복잡성이 감소된다. 본 개시에서, 인코더 측의 복잡도는 50% 감소될 수 있고, 디코더 측의 복잡도는 70% 감소될 수 있으며, 성능의 90% 내지 95%가 유지된다는 것이 실험을 통해 입증되었다. 따라서, 아핀 모델에 기초한 모션 보상 예측 기술이 실제로 효과적으로 적용될 수 있다.
선택적으로, 도 16에 도시된 바와 같이, S1470은 다음 단계를 포함한다.
S1601. 아핀 모션 보상 이미지 서브-블록 내의 각각의 아핀 모션 보상 이미지 서브-블록의 모션 벡터를 결정한다.
S1603. 각각의 아핀 모션 보상 이미지 서브-블록의 모션 벡터에 기초해서 각각의 아핀 모션 보상 이미지 서브-블록의 모션 보상 예측 신호를 결정한다.
S1605. 각각의 아핀 모션 보상 이미지 서브-블록의 모션 보상 예측 신호에 기초해서 각각의 아핀 모션 보상 이미지 서브-블록을 인코딩한다.
본 개시의 이 실시예에서, 각각의 아핀-MC 블록은 복수의 픽셀을 포함할 수 있고, 픽셀의 모션 벡터는 각각의 아핀-MC 블록으로부터 아핀-MC 블록의 모션 벡터로서 선택될 필요가 있음을 이해해야 한다.
선택적으로, S1601에서, 아핀-MC 블록의 중심 위치 상의 픽셀의 모션 벡터가 아핀-MC 블록의 모션 벡터, 아핀-MC 블록 내의 모든 픽셀의 모션 벡터의 평균값은 아핀-MC 블록의 모션 벡터로서 사용될 수 있거나, 아핀-MC 블록 내의 좌측 상단 픽셀의 모션 벡터가 아핀-MC 블록의 모션 벡터로서 선택될 수 있다. 그렇지만, 이것은 본 개시에 제한되지 않는다.
선택적으로, 본 개시의 이 실시예에서, 각각의 아핀 모션 보상 이미지 서브-블록 내의 경계 픽셀의 신호가 필터링되고, 경계 픽셀은 각각의 아핀 모션 보상 이미지 서브-블록의 경계에서 하나 이상의 픽셀의 행이다.
선택적으로, 본 개시의 이 실시예에서, 경계 픽셀의 신호는 모션 보상 예측 신호 및/또는 재구성된 신호를 포함하고, 재구성된 신호는 모션 보상 예측 신호와 재구성된 잔차 신호의 합이다.
재구성된 신호는 일반적으로 모션 보상 예측 신호 및 재구성된 잔차 신호를 가산함으로써 얻어진다. 손실 인코딩은 일반적으로 잔차 신호에서 수행된다. 이것은 원래 잔차 신호에 대한 재구성된 잔차 신호의 왜곡을 야기한다. 인접한 아핀-MC 블록의 경계에서 픽셀의 왜곡 원인은 다를 수 있다. 예를 들어, 제1 아핀-MC 블록의 우측에 있는 픽셀은 왜곡으로 인해 커지고 제1 아핀-MC 블록의 우측에 인접한 아핀-MC 블록의 좌측에 있는 픽셀은 왜곡으로 인해 작아진다. 이는 아핀-MC 블록에서 재구성된 픽셀의 경계 픽셀 값의 불연속성을 야기하고 주관적이고 객관적인 효과를 손상시킨다. 따라서 재구성된 신호를 필터링해야 한다.
선택적으로, 본 개시의 이 실시예에서, 필터링은 저역 통과 필터를 사용함으로써 수행될 수 있으며, 따라서 경계 영역에서의 픽셀 값이 보다 부드럽게 변경된다. 예를 들어, 가우스 필터를 사용하여 필터링을 수행한다. 그렇지만, 이것은 본 개시에 제한되지 않는다.
선택적으로, 본 개시의 이 실시예에서, 필터링은 중첩된 블록 모션 보상(Overlapped block motion compensation, "OBMC"로 약칭)을 사용하여 수행될 수 있다. 필터링될 픽셀에 인접한 아핀-MC 블록의 모션 벡터를 사용하여 필터링될 픽셀에 대해 모션 보상 예측이 수행되고, 획득된 모션 보상 예측 신호 및 필터링될 픽셀의 모션 벡터를 사용하여 획득된 모션 보상 예측 신호에 대해 가중 평균이 수행되어, 최종 모션 보상 예측 신호를 획득한다.
본 개시의 이 실시예에서의 비디오 이미지 디코딩 방법에 따르면, 디코딩 장치는 결정된 아핀 이미지 블록의 모션 벡터 차이 및 아핀 이미지 블록의 모션 벡터 정밀도, 및 제어 포인트 사이의 거리에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 그리고 아핀 이미지 블록의 크기와 아핀 모션 보상 이미지 서브-블록의 크기 사이의 관계에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 추가로 조정하므로, 아핀 모션 보상 이미지 서브-블록은 구현하기 쉽고 복잡성이 감소된다. 본 개시에서, 인코더 측의 복잡도는 50% 감소될 수 있고, 디코더 측의 복잡도는 70% 감소될 수 있으며, 성능의 90% 내지 95%가 유지된다는 것이 실험을 통해 입증되었다. 따라서, 아핀 모델에 기초한 모션 보상 예측 기술이 실제로 효과적으로 적용될 수 있다.
본 개시의 이 실시예에서의 비디오 이미지 디코딩 방법에 따르면, 디코딩 장치는 결정된 아핀 이미지 블록의 모션 벡터 차이 및 모션 벡터 정밀도에 기초하여 아핀 모션 보상 이미지 서브-블록의 크기를 결정하고, 상기 제어 포인트 사이의 거리를 더 포함하고, 상기 아핀 이미지 블록의 크기와 상기 아핀 모션 보상 이미지 서브-블록의 크기 사이의 관계에 기초하여 상기 아핀 모션 보상 이미지 서브-블록의 크기를 더 조정하며, 아핀 모션 보상 이미지 서브-블록의 크기는 구현하기 쉽고 복잡성이 감소된다. 본 개시에서, 인코더 측의 복잡도는 50% 감소될 수 있고, 디코더 측의 복잡도는 70% 감소될 수 있으며, 성능의 90% 내지 95%가 유지된다는 것이 실험을 통해 입증되었다. 따라서, 아핀 모델에 기초한 모션 보상 예측 기술이 실제로 효과적으로 적용될 수 있다.
이하에서는 도 17을 참조하여 본 발명을 구현하기 위한 디코딩 장치(1700)를 설명한다. 디코딩 장치(1700)는:
아핀 이미지 블록(affine image block)의 모션 벡터 차이를 결정하도록 구성되어 있는 모션 벡터 차이 결정 모듈(1710);
아핀 이미지 블록의 모션 벡터 정밀도를 결정하도록 구성되어 있는 모션 벡터 정밀도 결정 모듈(171\30);
상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하도록 구성되어 있는 모션 서브-블록 크기 결정 모듈(1750) - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 디코딩 처리를 수행하도록 구성되어 있는 디코딩 모듈(1770)
을 포함한다.
구체적으로, 디코딩 장치는 결정된 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하고, 아핀 이미지 블록의 모션 벡터 정밀도를 결정하고, 결정된 모션 벡터 차이 및 모션 벡터 정밀도, 제어 포인트 사이의 거리, 및 아핀 이미지 블록의 크기에 기초하여, 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 아핀 모션 보상 이미지 서브-블록의 크기는 아핀 이미지를 분할하는 데 사용되는 크기이고, 아핀 이미지 블록은 분할 크기에 기초하여 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록들로 분할된다. 그런 다음, 디코딩 장치는 아핀 모션 보상 이미지 서브-블록에 기초하여 아핀 이미지 블록을 디코딩한다. 디코딩 장치의 모듈은 본 개시의 디코딩 방법에 포함된 다양한 실행 단계의 기능을 구현한다. 구체적으로, 모듈은 본 개시의 디코딩 방법에서 모든 방법 단계의 기능, 예를 들어 단계 S710 내지 S740 및 이러한 단계의 확장 및 변형을 구현한다. 자세한 내용은 본 명세서의 디코딩 방법에 대한 설명을 참조한다. 간결성을 위해, 자세한 내용은 본 명세서에서 다시 설명되지 않는다.
이하에서는 도 18을 참조하여 본 개시의 실시예에 따른 인코딩 장치(1800)를 설명한다. 인코딩 장치(1800)은:
아핀 이미지 블록의 모션 벡터 차이를 결정하도록 구성되어 있는 모션 벡터 차이 결정 모듈(1810);
상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하도록 구성되어 있는 모션 벡터 정밀도 결정 모듈(1830);
상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하도록 구성되어 있는 이미지 서브-블록 크기 결정 모듈(1850) - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 인코딩 처리를 수행하도록 구성되어 있는 인코딩 모듈(1870)
을 포함한다.
구체적으로, 인코딩 장치는 결정된 제어 포인트에 기초하여 아핀 이미지 블록의 모션 벡터 차이를 결정하고, 아핀 이미지 블록의 모션 벡터 정밀도를 결정하고, 결정된 모션 벡터 차이 및 모션 벡터 정밀도, 제어 포인트 사이의 거리, 및 아핀 이미지 블록의 크기에 기초하여, 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며, 아핀 모션 보상 이미지 서브-블록의 크기는 아핀 이미지를 분할하는 데 사용되는 크기이고, 아핀 이미지 블록은 분할 크기에 기초하여 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록들로 분할된다. 그런 다음, 인코딩 장치는 아핀 모션 보상 화상 서브-블록에 기초하여 아핀 이미지 블록을 인코딩한다. 인코딩 장치의 모듈은 본 개시의 디코딩 방법에 포함된 다양한 실행 단계의 기능을 구현한다. 구체적으로, 모듈은 본 개시의 디코딩 방법에서 모든 방법 단계의 기능, 예를 들어 단계 S1410 내지 S1470 및 이들 단계의 확장 및 변형을 구현한다. 자세한 내용은 이 사양의 디코딩 방법에 대한 설명을 참조한다. 간결하게 하기 위해, 본 명세서에서 자세한 내용은 다시 설명되지 않는다.
도 19에 도시된 바와 같이, 본 개시의 실시예는 프로세서(1910), 메모리(1930) 및 버스 시스템(1950)을 포함하는 디코딩 장치(1900)를 추가로 제공한다. 프로세서 및 메모리는 버스 시스템을 사용하여 연결된다. 메모리는 명령을 저장하도록 구성되어 있다. 프로세서는 메모리에 저장된 명령을 실행하도록 구성된다. 인코딩 장치의 메모리는 프로그램 코드를 저장한다. 프로세서는 메모리에 저장된 프로그램 코드를 호출하여 본 개시의 디코딩 방법(700), 즉 도 7 내지 도 13에서 설명된 모든 방법의 모든 단계 및 확장 단계를 수행할 수 있다.
예를 들어, 프로세서는 메모리에 저장되어 있는 프로그램 코드를 호출하여, 본 개시의 디코딩 방법에서의 완전한 단계:
아핀 이미지 블록의 모션 벡터 차이를 결정하는 단계;
상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하는 단계;
상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 디코딩 처리를 수행하는 단계
를 수행한다.
디코딩 프로세스에서, 적절한 크기를 갖는 이미지 서브-블록이 선택될 수 있고, 이미지 서브-블록의 크기가 조정되므로, 아핀 이미지 블록은 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록으로 분할된다. 이러한 방식으로, 디코딩 복잡성이 감소되고 디코딩 성능이 향상된다.
본 개시의 이 실시예에서, 프로세서(1910)는 중앙 처리 장치(Central Processing Unit, "CPU"로 약칭)일 수 있음을 이해해야 한다. 대안으로, 프로세서(1910)는 다른 범용 프로세서, 디지털 신호 프로세서(digital signal processor, DSP), 주문형 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그램 가능 게이트 어레이(field programmable gate array, FPGA) 또는 다른 프로그램 가능 논리 장치, 이산 게이트 또는 트랜지스터 논리 장치, 이산 하드웨어 구성 요소 등이 될 수 있다. 범용 프로세서는 마이크로프로세서일 수 있거나, 프로세서는 임의의 종래의 프로세서 등일 수 있다.
메모리(1930)는 판독 전용 메모리 및 랜덤 액세스 메모리를 포함할 수 있고, 명령 및 데이터를 프로세서(1910)에 제공할 수 있다. 메모리(1930)의 일부는 비휘발성 랜덤 액세스 메모리를 더 포함할 수 있다. 예를 들어, 메모리(1930)는 디바이스 타입에 관한 정보를 더 저장할 수 있다.
버스 시스템(1950)은 데이터 버스 외에도 전력 버스, 제어 버스, 상태 신호 버스 등을 더 포함할 수 있다. 그렇지만, 명확한 설명을 위해, 도면에서 다양한 유형의 버스가 버스 시스템(1950)으로 표시되어 있다.
구현 프로세스에서, 전술한 방법의 단계들은 프로세서(1910)의 하드웨어 집적 논리 회로를 사용하거나 소프트웨어 형태의 명령을 사용함으로써 구현될 수 있다. 본 개시의 실시예를 참조하여 개시된 방법의 단계는 하드웨어 프로세서에 의해 직접 수행될 수 있거나, 프로세서의 하드웨어와 소프트웨어 모듈의 조합을 사용하여 수행될 수 있다. 소프트웨어 모듈은 랜덤 액세스 메모리, 플래시 메모리, 판독 전용 메모리, 프로그램 가능 판독 전용 메모리, 전기 소거 가능 프로그램 가능 메모리, 또는 레지스터와 같은 해당 기술 분야의 성숙한 저장 매체에 위치할 수 있다. 저장 매체는 메모리(1930)에 위치하고, 프로세서(1910)는 메모리(1930)로부터 정보를 판독하고 프로세서의 하드웨어와 결합하여 전술한 방법의 단계를 완료한다.
도 20에 도시된 바와 같이, 본 개시의 실시예는 프로세서(2010), 메모리(2030) 및 버스 시스템(2050)을 포함하는 인코딩 장치(2000)를 추가로 제공한다. 프로세서(2010) 및 메모리(2030)는 버스 시스템(2050)을 사용하여 연결된다. 메모리(2030)는 명령을 저장하도록 구성되어 있다. 프로세서(2010)는 메모리(2030)에 저장된 명령을 실행하도록 구성된다. 인코딩 장치(2000)의 메모리(2030)는 프로그램 코드를 저장한다. 프로세서(2010)는 메모리(2030)에 저장된 프로그램 코드를 호출하여 본 개시의 인코딩 방법(1400)에 도시된 모든 단계 및 모든 단계의 확장, 즉 도 14 내지 도 16에 설명된 모든 방법 단계를 수행할 수 있다. 예를 들어, 프로세서(2010)는 메모리(2030)에 저장된 프로그램 코드를 호출하여 다음 단계:
아핀 이미지 블록의 모션 벡터 차이를 결정하는 단계;
상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하는 단계;
상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 인코딩 처리를 수행하는 단계
를 수행한다.
인코딩 프로세스에서, 적절한 크기를 갖는 이미지 서브-블록이 선택될 수 있고, 이미지 서브-블록의 크기가 조정되어, 아핀 이미지 블록이 동일한 크기를 갖는 복수의 아핀 모션 보상 이미지 서브-블록으로 분할된다. 이러한 방식으로, 인코딩 복잡성이 감소되고 인코딩 성능이 향상된다.
본 개시의 이 실시예에서, 프로세서(2010)는 중앙 처리 장치(Central Processing Unit, "CPU"로 약칭)일 수 있음을 이해해야 한다. 대안으로, 프로세서(2010)는 다른 범용 프로세서, 디지털 신호 프로세서(digital signal processor, DSP), 주문형 집적 회로(application-specific integrated circuit, ASIC), 필드 프로그램 가능 게이트 어레이(field programmable gate array, FPGA) 또는 다른 프로그램 가능 논리 장치, 이산 게이트 또는 트랜지스터 논리 장치, 이산 하드웨어 구성 요소 등이 될 수 있다. 범용 프로세서는 마이크로프로세서일 수 있거나, 프로세서는 임의의 종래의 프로세서 등일 수 있다.
메모리(2030)는 읽기 전용 메모리 및 랜덤 액세스 메모리를 포함하고, 프로세서(2010)에 명령 및 데이터를 제공할 수 있다. 메모리(2030)의 일부는 비휘발성 랜덤 액세스 메모리를 더 포함할 수 있다. 예를 들어, 메모리(2030)는 디바이스 타입에 관한 정보를 더 저장할 수 있다.
버스 시스템(2050)은 데이터 버스 외에 전력 버스, 제어 버스, 상태 신호 버스 등을 더 포함할 수 있다. 그렇지만, 명확한 설명을 위해, 도면에서 다양한 유형의 버스가 버스 시스템(2050)으로 표시되어 있다.
구현 프로세스에서, 전술한 방법의 단계는 프로세서(2010)의 하드웨어 집적 논리 회로를 사용하거나 소프트웨어 형태의 명령을 사용함으로써 구현될 수 있다. 본 개시의 실시예를 참조하여 개시된 방법의 단계는 하드웨어 프로세서에 의해 직접 수행될 수 있거나, 프로세서의 하드웨어와 소프트웨어 모듈의 조합을 사용하여 수행될 수 있다. 소프트웨어 모듈은 랜덤 액세스 메모리, 플래시 메모리, 판독 전용 메모리, 프로그램 가능 판독 전용 메모리, 전기 소거 가능 프로그램 가능 메모리, 또는 레지스터와 같이 당 기술 분야에 많이 보급된 저장 매체에 위치할 수 있다. 저장 매체는 메모리(2030)에 위치하고, 프로세서(2010)는 메모리(2030)로부터 정보를 판독하고 프로세서의 하드웨어와 결합하여 전술한 방법의 단계를 완료한다. 반복을 피하기 위해, 자세한 내용은 여기서 다시 설명되지 않는다.

Claims (38)

  1. 비디오 이미지 디코딩 방법으로서,
    아핀 이미지 블록(affine image block)의 모션 벡터 차이를 결정하는 단계;
    상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하는 단계;
    상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
    상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 디코딩 처리를 수행하는 단계
    를 포함하는 비디오 이미지 디코딩 방법.
  2. 제1항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제1 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하는 단계 - 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계; 및
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계
    를 포함하는, 비디오 이미지 디코딩 방법.
  3. 제1항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는:
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제2 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하는 단계 - 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ;
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계; 및
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계
    를 포함하는, 비디오 이미지 디코딩 방법.
  4. 제1항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제1 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하는 단계 - 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 정수임 - ;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계;
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제2 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하는 단계 - 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ; 및
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계
    를 포함하는, 비디오 이미지 디코딩 방법.
  5. 제2항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계는:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 하나 이상의 단위 길이만큼 조정하는 단계, 즉 증가/감소시키는 단계; 및
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하는 단계
    를 포함하며,
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계는:
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 하나 이상의 단위 길이만큼 조정하는 단계, 즉 증가/감소시키는 단계; 및
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하는 단계
    를 포함하는, 비디오 이미지 디코딩 방법.
  6. 제2항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계는:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 상기 수평 방향의 상기 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값에 하나 이상의 단위 길이만큼 조정하는 단계, 즉 증가/감소시키는 단계; 및
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하는 단계
    를 포함하며,
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계는:
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 상기 수직 방향의 상기 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값에 하나 이상의 단위 길이만큼 조정하는 단계, 즉 증가/감소시키는 단계; 및
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하는 단계
    를 포함하는, 비디오 이미지 디코딩 방법.
  7. 제2항에 있어서,
    상기 비디오 이미지 디코딩 방법은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 미리 설정된 길이 S의 정수배인지를 판정하고,
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 상기 미리 설정된 길이 S의 정수배가 아니면, 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 재조정된 길이가 상기 미리 설정된 길이 S의 정수배가 될 때까지 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이를 하나 이상의 단위 길이만큼 재조정하는 단계, 즉 증가/감소시키는 단계 - 여기서 S는 2n과 같고, n은 0 또는 양의 정수임 - ; 및
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 미리 설정된 길이 S의 정수배인지를 판정하고,
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 상기 미리 설정된 길이 S의 정수배가 아니면, 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 재조정된 길이가 상기 미리 설정된 길이 S의 정수배가 될 때까지 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이를 하나 이상의 단위 길이만큼 재조정하는 단계, 즉 증가/감소시키는 단계 - 여기서 S는 2n과 같고, n은 0 또는 양의 정수임 -
    를 더 포함하는, 비디오 이미지 디코딩 방법.
  8. 제1항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는:
    상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 미리 설정된 크기 테이블을 조회함으로써 상기 아핀 이미지 블록 내의 상기 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계
    를 포함하며,
    상기 미리 설정된 크기 테이블은 상기 아핀 모션 보상 이미지 서브-블록의 크기이면서 또한 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 미리 결정되는 크기를 저장하며, 상기 아핀 모션 보상 이미지 서브-블록의 미리 결정된 크기는: 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인 것을 충족하는, 비디오 이미지 디코딩 방법.
  9. 제8항에 있어서,
    상기 아핀 모션 보상 이미지 서브-블록의 미리 결정된 크기는: 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이가 상기 미리 설정된 길이 S의 정수배이고, 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이가 상기 미리 설정된 길이 S의 정수배인 것을 추가로 충족하며, 여기서 S는 2n과 같고, n은 0 또는 양의 정수인, 비디오 이미지 디코딩 방법.
  10. 비디오 이미지 인코딩 방법으로서,
    아핀 이미지 블록의 모션 벡터 차이를 결정하는 단계;
    상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하는 단계;
    상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
    상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 인코딩 처리를 수행하는 단계
    를 포함하는 비디오 이미지 인코딩 방법.
  11. 제10항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제1 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하는 단계 - 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계; 및
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계
    를 포함하는, 비디오 이미지 인코딩 방법.
  12. 제10항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는:
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제2 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하는 단계 - 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ;
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계; 및
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계
    를 포함하는, 비디오 이미지 인코딩 방법.
  13. 제10항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제1 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하는 단계 - 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 정수임 - ;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계;
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제2 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하는 단계 - 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ; 및
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계
    를 포함하는, 비디오 이미지 인코딩 방법.
  14. 제11항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계는:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 하나 이상의 단위 길이만큼 조정하는 단계, 즉 증가/감소시키는 단계; 및
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하는 단계
    를 포함하며,
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계는:
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 하나 이상의 단위 길이만큼 조정하는 단계, 즉 증가/감소시키는 단계; 및
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하는 단계
    를 포함하는, 비디오 이미지 인코딩 방법.
  15. 제11항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계는:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 상기 수평 방향의 상기 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값에 하나 이상의 단위 길이만큼 조정하는 단계, 즉 증가/감소시키는 단계; 및
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하는 단계
    를 포함하며,
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하는 단계는:
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 상기 수직 방향의 상기 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값에 하나 이상의 단위 길이만큼 조정하는 단계, 즉 증가/감소시키는 단계; 및
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하는 단계
    를 포함하는, 비디오 이미지 인코딩 방법.
  16. 제11항에 있어서,
    상기 비디오 이미지 인코딩 방법은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 미리 설정된 길이 S의 정수배인지를 판정하고,
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 상기 미리 설정된 길이 S의 정수배가 아니면, 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 재조정된 길이가 상기 미리 설정된 길이 S의 정수배가 될 때까지 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이를 하나 이상의 단위 길이만큼 재조정하는 단계, 즉 증가/감소시키는 단계 - 여기서 S는 2n과 같고, n은 0 또는 양의 정수임 - ; 및
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 미리 설정된 길이 S의 정수배인지를 판정하고,
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 상기 미리 설정된 길이 S의 정수배가 아니면, 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 재조정된 길이가 상기 미리 설정된 길이 S의 정수배가 될 때까지 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이를 하나 이상의 단위 길이만큼 재조정하는 단계, 즉 증가/감소시키는 단계 - 여기서 S는 2n과 같고, n은 0 또는 양의 정수임 -
    를 더 포함하는, 비디오 이미지 인코딩 방법.
  17. 제10항에 있어서,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 되도록, 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계는:
    상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 미리 설정된 크기 테이블을 조회함으로써 상기 아핀 이미지 블록 내의 상기 아핀 모션 보상 이미지 서브-블록의 크기를 결정하는 단계
    를 포함하며,
    상기 미리 설정된 크기 테이블은 상기 아핀 모션 보상 이미지 서브-블록의 크기이면서 또한 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 미리 결정되는 크기를 저장하며, 상기 아핀 모션 보상 이미지 서브-블록의 미리 결정된 크기는: 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인 것을 충족하는, 비디오 이미지 인코딩 방법.
  18. 제17항에 있어서,
    상기 아핀 모션 보상 이미지 서브-블록의 미리 결정된 크기는: 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이가 상기 미리 설정된 길이 S의 정수배이고, 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이가 상기 미리 설정된 길이 S의 정수배인 것을 추가로 충족하며, 여기서 S는 2n과 같고, n은 0 또는 양의 정수인, 비디오 이미지 인코딩 방법.
  19. 비디오 이미지 디코딩 장치로서,
    아핀 이미지 블록(affine image block)의 모션 벡터 차이를 결정하도록 구성되어 있는 모션 벡터 차이 결정 모듈;
    아핀 이미지 블록의 모션 벡터 정밀도를 결정하도록 구성되어 있는 모션 벡터 정밀도 결정 모듈;
    상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하도록 구성되어 있는 모션 서브-블록 크기 결정 모듈 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
    상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 디코딩 처리를 수행하도록 구성되어 있는 디코딩 모듈
    을 포함하는 비디오 이미지 디코딩 장치.
  20. 제19항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제1 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하고 - 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하며; 그리고
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하도록 구성되어 있는, 비디오 이미지 디코딩 장치.
  21. 제19항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제2 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하고 - 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ;
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하며; 그리고
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하도록 구성되어 있는, 비디오 이미지 디코딩 장치.
  22. 제19항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제1 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하고 - 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 정수임 - ;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하고;
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제2 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하며 - 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ; 그리고
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하도록 구성되어 있는, 비디오 이미지 디코딩 장치.
  23. 제20항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 하나 이상의 단위 길이만큼 조정하고, 즉 증가/감소시키고;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정하는 것을 반복하며;
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 하나 이상의 단위 길이만큼 조정하고, 즉 증가/감소시키며; 그리고
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정하는 것을 반복하도록 추가로 구성되어 있는, 비디오 이미지 디코딩 장치.
  24. 제20항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 상기 수평 방향의 상기 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값에 하나 이상의 단위 길이만큼 조정하고, 즉 증가/감소시키며;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정하는 것을 반복하며;
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 상기 수직 방향의 상기 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값에 하나 이상의 단위 길이만큼 조정하고, 즉 증가/감소시키며; 그리고
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정하는 것을 반복하도록 추가로 구성되어 있는, 비디오 이미지 디코딩 장치.
  25. 제20항에 있어서,
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 미리 설정된 길이 S의 정수배인지를 판정하고,
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 상기 미리 설정된 길이 S의 정수배가 아니면, 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 재조정된 길이가 상기 미리 설정된 길이 S의 정수배가 될 때까지 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이를 하나 이상의 단위 길이만큼 재조정하고, 즉 증가/감소시키며 - 여기서 S는 2n과 같고, n은 0 또는 양의 정수임 - ; 그리고
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 미리 설정된 길이 S의 정수배인지를 판정하고,
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 상기 미리 설정된 길이 S의 정수배가 아니면, 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 재조정된 길이가 상기 미리 설정된 길이 S의 정수배가 될 때까지 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이를 하나 이상의 단위 길이만큼 재조정하고, 즉 증가/감소시키도록 - 여기서 S는 2n과 같고, n은 0 또는 양의 정수임 -
    추가로 구성되어 있는, 비디오 이미지 디코딩 장치.
  26. 제19항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 미리 설정된 크기 테이블을 조회함으로써 상기 아핀 이미지 블록 내의 상기 아핀 모션 보상 이미지 서브-블록의 크기를 결정하며,
    상기 미리 설정된 크기 테이블은 상기 아핀 모션 보상 이미지 서브-블록의 크기이면서 또한 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 미리 결정되는 크기를 저장하며, 상기 아핀 모션 보상 이미지 서브-블록의 미리 결정된 크기는: 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인 것을 충족하는, 비디오 이미지 디코딩 장치.
  27. 제26항에 있어서,
    상기 아핀 모션 보상 이미지 서브-블록의 미리 결정된 크기는: 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이가 상기 미리 설정된 길이 S의 정수배이고, 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이가 상기 미리 설정된 길이 S의 정수배인 것을 추가로 충족하며, 여기서 S는 2n과 같고, n은 0 또는 양의 정수인, 비디오 이미지 디코딩 장치.
  28. 비디오 이미지 인코딩 장치로서,
    아핀 이미지 블록의 모션 벡터 차이를 결정하도록 구성되어 있는 모션 벡터 차이 결정 모듈;
    상기 아핀 이미지 블록의 모션 벡터 정밀도를 결정하도록 구성되어 있는 모션 벡터 정밀도 결정 모듈;
    상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 상기 아핀 이미지 블록 내의 아핀 모션 보상 이미지 서브-블록의 크기를 결정하도록 구성되어 있는 이미지 서브-블록 크기 결정 모듈 - 상기 크기는 수평 방향의 길이 및 수직 방향의 길이를 포함하므로, 상기 수평 방향의 상기 아핀 이미지 블록의 길이는 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이는 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이며, 상기 제어 포인트는 상기 모션 벡터 차이를 결정하는 데 사용되는 픽셀임 - ; 및
    상기 아핀 모션 보상 이미지 서브-블록의 크기에 기초하여 상기 아핀 이미지 블록에 대한 인코딩 처리를 수행하도록 구성되어 있는 인코딩 모듈
    을 포함하는 비디오 이미지 인코딩 장치.
  29. 제28항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제1 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하고 - 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하며; 그리고
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하도록 구성되어 있는, 비디오 이미지 인코딩 장치.
  30. 제28항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제2 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하고 - 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이 및 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ;
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하며; 그리고
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하도록 구성되어 있는, 비디오 이미지 인코딩 장치.
  31. 제28항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제1 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수평 거리를 비례적으로 조정하고 - 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 정수임 - ;
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하고;
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 얻기 위해 상기 모션 벡터 차이의 제2 성분에 대한 상기 모션 벡터 정밀도의 비율에 기초하여 제1 수직 거리를 비례적으로 조정하며 - 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이는 모두 정수임 - ; 그리고
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인지를 판정하며, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 되도록 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 조정하도록 구성되어 있는, 비디오 이미지 인코딩 장치.
  32. 제29항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 하나 이상의 단위 길이만큼 조정하고, 즉 증가/감소시키며,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하며, 그리고
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 하나 이상의 단위 길이만큼 조정하고, 즉 증가/감소시키며,
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정 단계를 반복하도록 추가로 구성되어 있는, 비디오 이미지 인코딩 장치.
  33. 제29항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 상기 수평 방향의 상기 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값에 하나 이상의 단위 길이만큼 조정하고, 즉 증가/감소시키며,
    상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정하는 것을 반복하며; 그리고
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이를 상기 수직 방향의 상기 아핀 이미지 블록의 길이를 나눌 수 있는 가장 가까운 값에 하나 이상의 단위 길이만큼 조정하고, 즉 증가/감소시키며,
    상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배인지를 판정하고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 아니면, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이의 정수배가 될 때까지 상기 조정 및 판정하는 것을 반복하도록 추가로 구성되어 있는, 비디오 이미지 인코딩 장치.
  34. 제29항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 미리 설정된 길이 S의 정수배인지를 판정하고,
    상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 상기 미리 설정된 길이 S의 정수배가 아니면, 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 재조정된 길이가 상기 미리 설정된 길이 S의 정수배가 될 때까지 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이를 하나 이상의 단위 길이만큼 재조정하고, 즉 증가/감소시키며 - 여기서 S는 2n과 같고, n은 0 또는 양의 정수임 - ; 그리고
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 미리 설정된 길이 S의 정수배인지를 판정하고,
    상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이가 상기 미리 설정된 길이 S의 정수배가 아니면, 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 재조정된 길이가 상기 미리 설정된 길이 S의 정수배가 될 때까지 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 조정된 길이를 하나 이상의 단위 길이만큼 재조정하고, 즉 증가/감소시키도록 - 여기서 S는 2n과 같고, n은 0 또는 양의 정수임 -
    추가로 구성되어 있는, 비디오 이미지 인코딩 장치.
  35. 제28항에 있어서,
    상기 이미지 서브-블록 크기 결정 모듈은:
    상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 미리 설정된 크기 테이블을 조회함으로써 상기 아핀 이미지 블록 내의 상기 아핀 모션 보상 이미지 서브-블록의 크기를 결정하도록 구성되어 있으며,
    상기 미리 설정된 크기 테이블은 상기 아핀 모션 보상 이미지 서브-블록의 크기이면서 또한 상기 모션 벡터 차이, 상기 모션 벡터 정밀도, 상기 아핀 이미지 블록 내의 제어 포인트 간의 거리, 및 상기 아핀 이미지 블록의 크기에 기초하여 미리 결정되는 크기를 저장하며, 상기 아핀 모션 보상 이미지 서브-블록의 미리 결정된 크기는: 상기 수평 방향의 상기 아핀 이미지 블록의 길이가 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배이고, 상기 수직 방향의 상기 아핀 이미지 블록의 길이가 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이의 정수배인 것을 충족하는, 비디오 이미지 인코딩 장치.
  36. 제35항에 있어서,
    상기 아핀 모션 보상 이미지 서브-블록의 미리 결정된 크기는: 상기 수평 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이가 상기 미리 설정된 길이 S의 정수배이고, 상기 수직 방향의 상기 아핀 모션 보상 이미지 서브-블록의 길이가 상기 미리 설정된 길이 S의 정수배인 것을 추가로 충족하며, 여기서 S는 2n과 같고, n은 0 또는 양의 정수인, 비디오 이미지 인코딩 장치.
  37. 디코딩 장치로서,
    프로세서 및 비휘발성 메모리를 포함하며, 상기 프로세서는 상기 메모리에 저장되어 있는 프로그램 코드를 불러내어 제1항에 따른 디코딩 방법을 실행하는, 디코딩 장치.
  38. 인코딩 장치로서,
    프로세서 및 비휘발성 메모리를 포함하며, 상기 프로세서는 상기 메모리에 저장되어 있는 프로그램 코드를 불러내어 제10항에 따른 디코딩 방법을 실행하는, 인코딩 장치.
KR1020207006267A 2017-08-11 2018-08-09 비디오 이미지 인코딩 및 디코딩 방법, 장치 및 디바이스 KR102357575B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710687117.5A CN109391814B (zh) 2017-08-11 2017-08-11 视频图像编码和解码的方法、装置及设备
CN201710687117.5 2017-08-11
PCT/CN2018/099512 WO2019029590A1 (zh) 2017-08-11 2018-08-09 视频图像编码和解码的方法、装置及设备

Publications (2)

Publication Number Publication Date
KR20200033331A KR20200033331A (ko) 2020-03-27
KR102357575B1 true KR102357575B1 (ko) 2022-02-08

Family

ID=65270850

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207006267A KR102357575B1 (ko) 2017-08-11 2018-08-09 비디오 이미지 인코딩 및 디코딩 방법, 장치 및 디바이스

Country Status (13)

Country Link
US (2) US11039127B2 (ko)
EP (1) EP3664452A1 (ko)
JP (1) JP2020529811A (ko)
KR (1) KR102357575B1 (ko)
CN (4) CN109391814B (ko)
AU (1) AU2018315106B2 (ko)
BR (1) BR112020002656A2 (ko)
CA (1) CA3072712A1 (ko)
MX (1) MX2020001646A (ko)
PH (1) PH12020500307A1 (ko)
SG (1) SG11202001199QA (ko)
TW (1) TWI692247B (ko)
WO (1) WO2019029590A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111247806B (zh) * 2017-10-27 2023-11-14 松下电器(美国)知识产权公司 解码装置和解码方法
US10999596B2 (en) * 2018-06-19 2021-05-04 Qualcomm Incorporated Unification of affine motion field derivation and affine motion compensation
CN110620928B (zh) 2018-06-19 2022-12-09 北京字节跳动网络技术有限公司 不同精度的多个候选
EP3844955A1 (en) * 2018-08-29 2021-07-07 Vid Scale, Inc. Adaptive motion vector precision for affine motion model based video coding
EP3827586A1 (en) 2018-09-19 2021-06-02 Beijing Bytedance Network Technology Co. Ltd. Syntax reuse for affine mode with adaptive motion vector resolution
CN112997487A (zh) * 2018-11-15 2021-06-18 北京字节跳动网络技术有限公司 仿射模式与其他帧间编解码工具之间的协调
US11102476B2 (en) * 2018-12-28 2021-08-24 Qualcomm Incorporated Subblock based affine motion model
WO2020156516A1 (en) 2019-01-31 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Context for coding affine mode adaptive motion vector resolution
WO2020181507A1 (zh) * 2019-03-12 2020-09-17 北京大学 图像处理的方法与装置
CN111567044A (zh) * 2019-03-13 2020-08-21 北京大学 一种视频处理方法、装置、编码设备及解码设备
JP7381615B2 (ja) * 2019-06-25 2023-11-15 オッポ広東移動通信有限公司 動き補償処理方法、エンコーダ、デコーダ、記憶媒体
CN110636301B (zh) * 2019-09-18 2021-08-03 浙江大华技术股份有限公司 仿射预测方法、计算机设备和计算机可读存储介质
WO2021056220A1 (zh) * 2019-09-24 2021-04-01 北京大学 视频编解码的方法与装置
CN112135127B (zh) * 2019-11-05 2021-09-21 杭州海康威视数字技术股份有限公司 一种编解码方法、装置、设备及机器可读存储介质
US20240040141A1 (en) * 2022-07-18 2024-02-01 Tencent America LLC Method for affine motion refinement

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016184261A1 (zh) * 2015-05-15 2016-11-24 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2129133A3 (en) * 1995-08-29 2012-02-15 Sharp Kabushiki Kaisha Video coding device and video decoding device with a motion compensated interframe prediction
KR100359115B1 (ko) 2000-05-24 2002-11-04 삼성전자 주식회사 영상 코딩 방법
JP3681342B2 (ja) * 2000-05-24 2005-08-10 三星電子株式会社 映像コーディング方法
KR100571920B1 (ko) * 2003-12-30 2006-04-17 삼성전자주식회사 움직임 모델을 이용한 매쉬 기반의 움직임 보상방법을제공하는 영상의 부호화 방법 및 그 부호화 장치
KR100631777B1 (ko) 2004-03-31 2006-10-12 삼성전자주식회사 다 계층의 모션 벡터를 효율적으로 압축하는 방법 및 장치
DE102009026983A1 (de) * 2009-06-16 2010-12-30 Trident Microsystems (Far East) Ltd. Bildverarbeitungsverfahren mit einer Bewegungsschätzung und Bildverarbeitungsanordnung
EP2557792A4 (en) 2010-04-09 2014-08-13 Mitsubishi Electric Corp VIDEO CODING DEVICE AND VIDEO CODING DEVICE
CN102611884B (zh) * 2011-01-19 2014-07-09 华为技术有限公司 图像编解码方法及编解码设备
CN107734335B (zh) * 2014-09-30 2020-11-06 华为技术有限公司 图像预测方法及相关装置
US10560712B2 (en) * 2016-05-16 2020-02-11 Qualcomm Incorporated Affine motion prediction for video coding
US10448010B2 (en) * 2016-10-05 2019-10-15 Qualcomm Incorporated Motion vector prediction for affine motion models in video coding
US10701390B2 (en) * 2017-03-14 2020-06-30 Qualcomm Incorporated Affine motion information derivation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016184261A1 (zh) * 2015-05-15 2016-11-24 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备

Also Published As

Publication number Publication date
US20210243432A1 (en) 2021-08-05
BR112020002656A2 (pt) 2020-08-18
US11039127B2 (en) 2021-06-15
KR20200033331A (ko) 2020-03-27
CA3072712A1 (en) 2019-02-14
AU2018315106B2 (en) 2022-10-06
CN109391814B (zh) 2023-06-06
RU2020110025A (ru) 2021-09-14
WO2019029590A1 (zh) 2019-02-14
TW201919402A (zh) 2019-05-16
EP3664452A4 (en) 2020-06-10
US11496732B2 (en) 2022-11-08
US20200177877A1 (en) 2020-06-04
MX2020001646A (es) 2020-08-03
TWI692247B (zh) 2020-04-21
CN109391814A (zh) 2019-02-26
CN111935482B (zh) 2023-04-11
AU2018315106A1 (en) 2020-03-12
CN116708780A (zh) 2023-09-05
EP3664452A1 (en) 2020-06-10
JP2020529811A (ja) 2020-10-08
RU2020110025A3 (ko) 2021-11-03
PH12020500307A1 (en) 2021-02-08
CN110999302A (zh) 2020-04-10
SG11202001199QA (en) 2020-03-30
CN111935482A (zh) 2020-11-13

Similar Documents

Publication Publication Date Title
KR102357575B1 (ko) 비디오 이미지 인코딩 및 디코딩 방법, 장치 및 디바이스
US11252436B2 (en) Video picture inter prediction method and apparatus, and codec
CN107211154B (zh) 用于译码视频数据的方法和装置以及计算机可读存储介质
JP2020022171A (ja) イントラ予測方法とそれを利用した符号化器及び復号化器
TWI535269B (zh) 執行視訊寫碼之運動向量預測
TWI499267B (zh) 多度量尺度濾波
KR102351029B1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
US10681371B2 (en) Method and device for performing deblocking filtering
CN113923455B (zh) 一种双向帧间预测方法及装置
JP7150861B2 (ja) ビデオコーディングのための空間変動変換
KR20190096432A (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
KR102094222B1 (ko) 참조 영상 인코딩 방법, 참조 영상 디코딩 방법, 참조 영상 인코딩 디바이스 및 참조 영상 디코딩 디바이스
JP2022544164A (ja) フレームタイプに基づく適応分解能管理の暗示的信号伝達
US20210006839A1 (en) Picture filtering method and apparatus, and video codec
JP2022544160A (ja) 適応分解能管理信号伝達
TW202029774A (zh) 藉由轉換域濾波之量化假影抑制及信號恢復
US20120163460A1 (en) Sub-pixel interpolation for video coding
JP2022544159A (ja) サブフレームを使用した適応分解能管理
RU2771955C2 (ru) Устройство, оборудование, способ кодирования и декодирования видеоизображений
JP2014230031A (ja) 画像符号化装置、及び画像符号化プログラム

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant