KR20170065542A - 비디오 코딩을 위한 적응적 모션 벡터 레졸루션 방법 - Google Patents

비디오 코딩을 위한 적응적 모션 벡터 레졸루션 방법 Download PDF

Info

Publication number
KR20170065542A
KR20170065542A KR1020177010070A KR20177010070A KR20170065542A KR 20170065542 A KR20170065542 A KR 20170065542A KR 1020177010070 A KR1020177010070 A KR 1020177010070A KR 20177010070 A KR20177010070 A KR 20177010070A KR 20170065542 A KR20170065542 A KR 20170065542A
Authority
KR
South Korea
Prior art keywords
current
resolution
shifted
block
mvp
Prior art date
Application number
KR1020177010070A
Other languages
English (en)
Other versions
KR102068828B1 (ko
Inventor
샤오종 쉬
카이 장
샨 리우
지청 안
샨구오 장
Original Assignee
에이치에프아이 이노베이션 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from PCT/CN2014/088017 external-priority patent/WO2016049894A1/en
Priority claimed from PCT/CN2015/071553 external-priority patent/WO2016119104A1/en
Priority claimed from PCT/CN2015/072175 external-priority patent/WO2016123749A1/en
Application filed by 에이치에프아이 이노베이션 인크. filed Critical 에이치에프아이 이노베이션 인크.
Publication of KR20170065542A publication Critical patent/KR20170065542A/ko
Application granted granted Critical
Publication of KR102068828B1 publication Critical patent/KR102068828B1/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/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/117Filters, e.g. for pre-processing or post-processing
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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
    • 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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

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

Abstract

적응적 모션 벡터 레졸루션으로 비디오 코딩을 위한 MVP(모션 벡터 예측)의 방법이 개시된다. 본 발명에 따르면, 현재 MV 레졸루션, 참조 MV 레졸루션, 또는 현재 MV 레졸루션과 참조 MV 레졸루션 둘 다에 따라서 MVP 코딩이 현재 MV에 적용되거나 현재 MV가 저장된다. 일 실시형태에서, 현재 MV 레졸루션이 정수 픽셀 레졸루션에 대응할 때, TMVP 코딩이 수정된 시간 MV를 현재 MV의 모션 벡터 예측자로서 이용하여 현재 MV에 적용되고, 상기 수정된 시간 MV는 시간 MV를 우측으로 시프팅시킴으로써 생성된다. 다른 실시형태에서, 현재 MV 레졸루션이 정수 픽셀 레졸루션에 대응할 때, 현재 MV는 메모리에 저장되기 전에 좌측으로 시프팅된다.

Description

비디오 코딩을 위한 적응적 모션 벡터 레졸루션 방법{METHOD OF ADAPTIVE MOTION VECTOR RESOLUTION FOR VIDEO CODING}
관련 출원에 대한 교차 참조
본 출원은 2014년 9월 30일자 출원된 PCT 특허 출원 제PCT/CN2014/088017호, 2015년 1월 26일자 출원된 PCT 특허 출원 제PCT/CN2015/071553호, 2015년 2월 3일자 출원된 PCT 특허 출원 제PCT/CN2015/072175호, 2015년 4월 29일자 출원된 미국 가특허 출원 제62/154,373호 및 2015년 6월 22일자 출원된 미국 가특허 출원 제62/182,685호에 대하여 우선권을 주장한다. 상기 PCT 특허 출원 및 미국 가특허 출원들은 인용에 의해 그 전부가 본원에 통합된다.
기술 분야
본 발명은 비디오 코딩에 있어서 적응적 모션 벡터 레졸루션에 관한 것이다. 특히 본 발명은 현재 모션 벡터 레졸루션, 참조 모션 벡터 레졸루션 또는 상기 둘 다에 따라 모션 벡터 예측을 적용하는 것에 관한 것이다.
고효율 비디오 코딩(High Efficiency Video Coding, HEVC)은 최근에 개발된 새로운 코딩 표준이다. 고효율 비디오 코딩(HEVC) 시스템에서는 H.264/AVC의 고정 크기 매크로블록이 코딩 유닛(coding unit, CU)이라고 부르는 플렉시블 블록(flexible block)으로 교체된다. CU 내의 픽셀들은 코딩 효율을 개선하기 위해 동일한 코딩 파라미터들을 공유한다. CU는 HEVC에서 코딩된 트리 유닛(coded tree unit, CTU)이라고도 부르는 최대 CU(LCU)로 시작할 수 있다. 코딩 유닛의 개념 외에, 예측 유닛(prediction unit, PU)의 개념이 또한 HEVC에 도입된다. CU 계층 트리의 분할이 이루어지면, 각각의 리프(leaf) CU는 예측 유형 및 PU 구획(partition)에 따라 하나 이상의 예측 유닛(PU)으로 추가로 분할된다. 화면 내용 코딩을 위한 몇 가지 코딩 툴이 개발되었다.
정규의 라이브 비디오 콘텐츠와 달리, 화면 내용에 대응하는 비디오 자료는 가끔 정수(integer) 변위 값을 갖는다. 그러므로 1/4과 같이 분수 픽셀 오프셋으로서 비트스트림 내 모션 벡터들을 정상적으로 해석하는 종래의 인코더는 비트레이트를 불필요하게 증가시킬 수 있다. 반면에, 분수 모션 벡터 값은 카메라 캡처 콘텐츠와 같은 자연 장면에 대응하는 콘텐츠에 대하여 여전히 매우 유용하다. 따라서, 상이한 비디오 콘텐츠의 문제를 다루도록 목표 정해진 적응적 모션 벡터 레졸루션은 JCTVC-S0085(2014년 10월 17일부터 24일까지 프랑스 스트라스부르에서 개최된 ITU-T SG16 WP3 및 ISO/IEC JTC1/SC29/WG11의 비디오 코딩에 대한 합동 협력팀(JCT-VC)의 19차 회의에서 리(Li) 등이 "화면 내용에 대한 적응적 모션 벡터 레졸루션"(Adaptive motion vector resolution for screen content)의 명칭으로 발표한 문서 JCTVC-S0085)에서 설명되어 있다.
JCTVC-S0085에 따르면, 적응적 MB 레졸루션 인에이블 플래그(즉, adaptive_mv_resolution_enabled_flag)는 표 1에 나타낸 것처럼 적응적 모션 벡터 레졸루션이 적용되는지 표시하기 위해 시퀀스 파라미터 집합(sequence parameter set, SPS)으로 신호된다. 슬라이스 헤더(header)에서, 정수 MV 플래그(즉, use_integer_mv_flag)는 현재 슬라이스의 모션 벡터(MV)가 정수 픽셀 레졸루션을 사용하는지(즉, use_integer_ mv _flag=1) 또는 쿼터(quarter) 픽셀 레졸루션을 사용하는지(즉, use_integer_ mv _flag=0) 표시하기 위해 신호된다(표 1의 주해(Note) (1-2) 참조). 표 1에 나타낸 것처럼, 구문 요소(syntax element) use_integer_ mv _flag는 적응적 MV 레졸루션이 SPS 레벨 구문 요소 adaptive_mv_resolution_enabled_flag에 의해 표시된 것처럼 인이에블되었을 때에만 비트스트림에 통합된다(표 1의 주해 (1-1) 참조).
[표 1]
Figure pct00001
디코더 측에서, MV는 현재 슬라이스의 use_integer_mv_flag가 0인지 또는 1인지에 관계없이 동일한 방법으로 파싱 및 디코딩된다. 보간 처리 전에, MV는 JCTVC-S1005(2014년 10월 17일부터 24일까지 프랑스 스트라스부르에서 개최된 ITU-T SG16 WP3 및 ISO/IEC JTC1/SC29/WG11의 비디오 코딩에 대한 합동 협력팀(JCT-VC)의 19차 회의에서 조시(Joshi) 등이 "고효율 비디오 코딩(HEVC) 화면 내용 코딩: 드래프트 2"(High Efficiency Video Coding(HEVC) Screen Content Coding: Draft 2)의 명칭으로 발표한 문서 JCTVC-S1005)에 따라서 아래에 나타낸 것처럼 use_integer_mv_fla에 기초하여 스케일링(scaling)된다.
[식 1]
use_integer_mv_flag==1이면, mvLX<<=2, mvCLX<<=2이다.
식 1에서, X는 0 또는 1과 같고, mvLX는 리스트 LX(즉, 리스트 L0 또는 L1)와 관련된 루마 성분(luma component)의 모션 벡터를 나타내며, mvcLX는 리스트 LX(즉, 리스트 L0 또는 L1)와 관련된 채도 성분의 모션 벡터를 나타낸다. 연산 ""mvLX<<=2"는 mvLX가 2만큼 좌측으로 시프팅되고 그 결과가 본래 mvLX를 교체한다는 것을 의미한다. 유사하게, 연산 ""mvcLX<<=2"는 mvLX가 2만큼 좌측으로 시프팅되고 그 결과가 본래 mvcLX를 교체한다는 것을 의미한다.
현재 슬라이스 레벨 MV 적응 레졸루션 접근법에는 몇 가지 문제점이 있다. 첫째로, 시간 모션 벡터 예측(temporal motion vector prediction, TMVP)이 적용되고 병치된(collocated) 픽처 내의 use_integer_mv_flag와 현재 픽처 내의 use_integer_mv_flag가 상이하면, 예측되는 현재 픽처 내의 MV와 모션 벡터 예측자(motion vector predictor, MVP)의 MV 레졸루션이 부정합(mismatch)될 것이다. 이 설명에서 약어 MVP는 사용 상황에 따라서 모션 벡터 예측 또는 모션 벡터 예측자에 또한 대응할 수 있다.
도 1은 일 예를 보인 것이다. 이 시나리오에서, 현재 픽처(110)에서의 use_integer_mv_flag는 0이고, 병치된 픽처(120)에서의 use_integer_mv_flag는 1이며, 병치된 MV(124)는 참조 블록(122)에 대하여 (4, 4)와 같다. 기존 관례에 따라서, 병치된 MV(4, 4)는 TMVP가 사용되면 현재 픽처(110)의 현재 블록(112)의 현재 MV(114)에 대한 MVP로서 직접 취급된다. 그러나 병치된 픽처에서의 병치된 MV(4, 4)는 MV가 쿼터 픽셀 레졸루션으로 표현될 때 (16, 16)의 모션 벡터 값을 표시한다.
다른 시나리오에서, 현재 픽처에서의 use_integer_mv_flag는 1이고, 병치된 픽처에서의 use_integer_mv_flag는 0이며, 병치된 MV는 아직 (4, 4)와 같다. 기존 관례에 따라서, 병치된 MV(4, 4)는 TMVP가 사용되면 현재 픽처에 대한 MVP로서 직접 취급된다. 그러나 병치된 픽처에서의 병치된 MV(4, 4)는 MV가 정수 픽셀 레졸루션으로 표현될 때 (1, 1)의 모션 벡터 값을 표시한다.
상기 2개의 예에서, MVP의 레졸루션은 예측 대상의 현재 MV의 레졸루션과 정합되지 않는다. 이것은 TMVP의 효율을 저하시킬 것이다.
다른 하나의 문제는 비트 폭 제한에 기인하여 생성한다. JCTVC-S1005에 따르면, 상기 특정된 것처럼 mvL0 및 mvL1의 결과적인 값은 항상 -215 ~ 215-1의 범위(이 값들을 포함함) 내에 있을 것이다. 이 제한에 의해, mvL0 및 mvL1은 2바이트로 표현될 수 있다. 그러나 현재 픽처의 use_integer_mv_flag가 1이고 병치된 픽처의 use_integer_mv_flag가 0이며 병치된 MV가 (215-1, 215-1)과 같은 조건에서, mvLX는 TMVP 합병 후보가 선택되면 mvLX<<=2 및 mvcLX<<=2 연산 후에 상기 2바이트 제한을 초과할 것이다.
적응적 MV 레졸루션은 또한 현재 슬라이스의 MV가 정수 픽셀 레졸루션을 가질 때 디블로킹(deblocking) 처리에서 문제를 야기할 수 있다. 디블로킹 처리에서, 경계 강도는 블록 경계를 위해 대응하는 디블로킹 필터를 선택하도록 결정된다. 경계 강도는 각종 인수에 따라 결정된다. 상이한 인수들 중에서, 하나의 인수는 블록 경계의 양측에서의 모션 벡터와 관계된다. 특히, 필터링 경계 강도를 결정하기 위해 |Q_MVx - P_MVx| 및 |Q_MVy - P_MVy|가 4의 역치(threshold value)와 비교되고, 여기에서 Q_MV와 P_MV는 2개의 인접 블록에서의 모션 벡터를 표시하고, Q_MVx와 Q_MVy는 Q_MV의 x 및 y 성분을 표시하며, P_MVx와 P_MVy는 P_MV의 x 및 y 성분을 표시한다.
4의 역치는 MV가 항상 쿼터 픽셀 레졸루션을 사용한다는 가정으로 설계된다. 그러나 현재 슬라이스의 MV가 정수 픽셀 레졸루션과 같은 다른 MV 레졸루션을 사용하는 경우에는 4의 역치가 적절하지 않을 수 있다.
인트라BC(인트라 픽처 블록 카피)는 HEVC 화면 내용 코딩(HEVC-SCC) 확장을 위한 다른 하나의 코딩 툴이다. 인트라BC 모드를 이용하는 코딩 유닛(CU)의 경우에, 예측 블록은 현재 프레임의 재구성된 영역으로부터 획득된다. 그 다음에, 블록 벡터(BV)와 잔여가 코딩된다. 2015년 2월에 제네바에서 개최된 20차 JCT-VC 회의에서는 인트라BC를 인터 코딩 모드로 단일화하는 것에 동의하였다. 즉, 현재 픽처가 참조 픽처로서 취급되고 1개 또는 양측 참조 픽처 리스트에 삽입된다. 블록 벡터 예측 및 코딩은 인터 모션 벡터 예측 및 코딩과 동일하다. 이 단일화는 코덱 설계를 단순화한다. 그러나 몇 가지 남아있는 문제가 있다. 예를 들면, 현재 SCM에서, 블록 벡터는 항상 정수 레졸루션을 사용하고 모션 벡터는 슬라이스 레벨에서 전환되는 정수 레졸루션과 쿼터-펠(quarter-pel) 레졸루션 둘 다를 사용할 수 있다. 이것은 디블로킹 스테이지 및 MV 예측 스테이지 중에 레졸루션 부정합을 유도할 수 있다.
HEVC 화면 내용 코딩(HEVC-SCC) 확장에서는 '적응적 색 공간 변환 또는 인루프(in-loop) 색 공간 변환'이라고 부르는 다른 하나의 코딩 툴이 채용되었다. 인루프 색 공간 변환을 위한 디코딩 흐름의 일 예가 도 2에 도시되어 있다. 추가의 모듈, 즉 역 색 공간 변환(230)이 포함된다. 엔트로피 디코더(210), 역 양자화(de-quantization, 215), 역변환(inverse transform, 220), 교차 성분 예측(cross-component prediction, CCP, 225), 모션 보상(235), 인트라 예측(240), 가산기(245), 디블로킹 필터(250), SAO(sample adaptive offset, 샘플 적응 오프셋) 필터(255) 및 DPB(decoded picture buffer, 디코딩된 픽처 버퍼, 260)를 포함한 각종 모듈이 도 2에 도시되어 있다. 디코더는 또한 역 색 공간 변환을 선택(하부 위치)하거나 역 색 공간 변환을 우회(상부 위치)하는 제1 스위치(S1)를 포함한다. 디코더는 또한 인터 예측을 선택(상부 위치)하거나 인트라 예측을 선택(하부 위치)하는 제2 스위치(S2)를 포함한다. 역 색 공간 변환(230)을 제외한 다른 모든 모듈들은 종래의 HEVC에서 사용되는 표준 디코더 모듈이다. 색 공간 변환이 인에이블되고 블록이 코딩되었을 때, 역 색 공간 변환은 종래의 역 DCT/DST 변환 및 CCP로부터의 출력을 위해 잔여 도메인을 본래 도메인으로 다시 변환하기 위해 호출된다. CU에서 색 공간 변환의 사용을 표시하기 위해 플래그가 신호된다. 인트라BC(인트라 픽처 블록 카피) 및 인터 모드의 경우에, 플래그는 현재 CU에 적어도 하나의 비제로 계수가 있을 때만 신호된다. 인트라 모드의 경우에, 플래그는 제1 PU(즉, CU 내의 상부-좌측 PU)의 채도 모드가 DM 모드로 코딩되었을 때만 신호된다. DM 모드는 채도 성분의 인트라 모드가 루마 성분에 대하여 사용된 인트라 모드와 동일한 경우에 직접 모드에 대응한다.
CU가 무손실 방식으로 코딩되는지 또는 손실 방식으로 코딩되는지에 따라 2개의 상이한 색 공간 변환이 적용된다. 손실 코딩의 경우에 순방향 및 역방향 색 공간 변환은 YCoCg 변환 행렬을 사용하고, 이들은 식 2 및 식 3과 같이 규정된다.
[식 2]
순방향:
Figure pct00002
[식 3]
역방향:
Figure pct00003
여기에서, 본래의 색 공간(C0, C1, C2)은 (R, G, B), (Y, Cb, Cr) 또는 (Y, U, V)에 대응할 수 있다.
식 2에 나타낸 손실 코딩에서의 순방향 색 공간 변환은 정상화되지 않고, 이것은 변환이 적용되었을 때 신호 축소를 야기한다. 순방향 변환의 규범(norm)이 C0 및 C2에 대하여 대략
Figure pct00004
와 같고 C1에 대하여
Figure pct00005
와 같다고 가정하면, (-5, -3, -5)의 델타 양자화 파라미터(QP)가 3개의 색 성분의 축소된 신호 범위를 각각 보상하기 위해 사용된다. 다시 말해서, 색 공간 변환이 적용되었을 때, 양자화 파라미터는 3개의 성분에 대하여 각각 (QP-5, QP-3, QP-5)로 설정되고, 여기에서 QP는 색 공간 변환이 없는 CU에 대한 '정상' QP 값이다. 신호 범위 축소 색 공간 변환을 수용하기 위한 QP 조정이 양자화/역 양자화 처리를 위해 수행된다. 반면에, 디블로킹 처리도 또한 QP 값을 사용하지만, 디블로킹 처리에서는 정상 QP 값만이 사용된다.
HEVC-SCC 명세서에서, QP는 종속절 8.6.2에 설명된 것처럼 조정된다. 양자화 파라미터(qP)는 다음과 같이 도출된다.
[식 4]
- cIdx가 0과 같으면,
qP = Qp'Y + (cu_residual_act_flag[xTbY][yTbY]? - 5:0)
[식 5]
- 그렇지 않고, cIdx가 1과 같으면,
qP = Qp'Cb + (cu_residual_act_flag[xTbY][yTbY]? - 5:0)
[식 6]
- 그렇지 않으면(cIdx가 2와 같으면),
qP = Qp'Cr + (cu_residual_act_flag[xTbY][yTbY]? - 3:0)
여기에서 cu_residual_act_flag[xTbY][yTbY]는 적응적 색 공간 변환이 좌측-상부 위치(xTbY, yTbY)의 블록에 적용되면 1이다. 그렇지 않으면 cu_residual_act_flag[xTbY][yTbY]는 0이다. Qp'Y, Qp'Cb 및 Qp'Cr은 색 성분 Y, Cb 및 Cr의 본래 양자화 파라미터에 각각 대응한다. 식 (cu_residual_act_flag[xTbY][yTbY]?-5:0)은 cu_residual_act_flag[xTbY][yTbY]가 참 또는 1과 같으면 값 -5로 돌아가고, cu_residual_act_flag[xTbY][yTbY]가 거짓 또는 0과 같으면 0으로 돌아갈 것이다. 위에서 언급한 변수 cIdx는 색지수에 대응한다.
그러나 QP에 의해 제어되는 스케일링 처리는 식 7에 따라 HEVC 표준의 종속절 8.6.3에서 규정된다.
[식 7]
Figure pct00006
k=0.5인 경우, 리스트 levelScale[]는 levelScale[k] = {40, 45, 51, 57, 64, 72}로서 특정된다.
식 4, 5 및 6에서 qP 조정은 적응적 색 공간 변환이 적용되었을 때 qP가 0 미만으로 되게 할 수 있다. qP<0일 때, "qP%6"은 리스트 levelScale[]에 대하여 음의 독립변수를 야기하고 정의되지 않은 levelScale[] 값을 유도할 것이다. 그러므로 d[x][y]는 식 7에서 정의되지 않는다. 그러므로 이 문제를 극복하는 것이 바람직하다.
적응적 모션 벡터 레졸루션으로 비디오 코딩을 위한 MVP(모션 벡터 예측)의 방법이 개시된다. 본 발명에 따르면, 현재 MV 레졸루션, 참조 MV 레졸루션, 또는 현재 MV 레졸루션과 참조 MV 레졸루션 둘 다에 따라서 MVP 코딩이 현재 MV에 적용되거나 현재 MV가 저장된다. 일 실시형태에 있어서, 참조 픽처의 참조 블록과 관련된 참조 MV는 참조 픽처의 시간 참조 블록과 관련된 시간 MV에 대응한다. 다른 실시형태에 있어서, 현재 MV 레졸루션이 정수 픽셀 레졸루션에 대응할 때, TMVP 코딩이 수정된(modified) 시간 MV를 현재 MV의 모션 벡터 예측자로서 이용하여 현재 MV에 적용되고, 상기 수정된 시간 MV는 시간 MV를 우측으로 시프팅시킴으로써 생성된다. 시간 MV가 우측으로 시프팅되어 수정된 시간 MV를 생성하기 전에 오프셋이 시간 MV에 추가될 수 있다. 다른 실시형태에 있어서, 현재 MV 레졸루션이 정수 픽셀 레졸루션에 대응할 때, 현재 MV는 메모리에 저장되기 전에 좌측으로 시프팅된다. 시프팅된 현재 MV는 후속 MV의 TMVP 코딩을 위해 사용될 수 있다. 시프팅된 현재 MV는 현재 슬라이스를 내포한 현재 픽처의 다른 블록에 대한 모션 벡터 예측자로서 사용되기 전에 뒤로 시프팅된다. 대안적으로, 현재 MV 레졸루션과 관계된 구문 요소가 후속 MV의 TMVP 코딩을 위해 메모리에 저장될 수 있다.
현재 MV 레졸루션이 정수 픽셀 레졸루션에 대응하고 참조 MV 레졸루션이 비정수(non-integer) 픽셀 레졸루션에 대응할 때, TMVP 코딩이 수정된 시간 MV를 현재 MV의 모션 벡터 예측자로서 이용하여 현재 MV에 적용될 수 있고, 상기 수정된 시간 MV는 시간 MV를 우측으로 시프팅시킴으로써 생성된다. 다른 경우에, 현재 MV 레졸루션이 비정수 픽셀 레졸루션에 대응하고 참조 MV 레졸루션이 정수 픽셀 레졸루션에 대응할 때, TMVP 코딩이 수정된 시간 MV를 현재 MV의 모션 벡터 예측자로서 이용하여 현재 MV에 적용될 수 있고, 상기 수정된 시간 MV는 시간 MV를 좌측으로 시프팅시킴으로써 생성된다. 현재 MV 레졸루션이 참조 MV 레졸루션과 상이할 때, TMVP 코딩이 현재 MV에 대하여 또한 디스에이블되거나 또는 인코더가 현재 블록의 TMVP 코딩을 위한 참조 픽처를 무시할 수 있다.
다른 실시형태에 있어서, 시프팅 연산이 현재 MV 레졸루션 또는 참조 MV 레졸루션에 기인하여 현재 MV 또는 시간 MV에 각각 적용되었을 때, 시프팅된 현재 MV 또는 시프팅된 시간 MV는 유효(valid) 범위로 클립핑(clipping)된다. 대안적으로, 현재 MV가 상이한 현재 MV 레졸루션에 대하여 상이한 범위를 갖거나 시간 MV가 상이한 참조 MV 레졸루션에 대하여 상이한 범위를 가질 수 있다.
현재 MV 레졸루션을 표시하는 제1 구문 요소 및 참조 MV 레졸루션을 표시하는 제2 구문 요소는 현재 MV 레졸루션이 참조 MV 레졸루션과 동일한 값을 갖게 하도록 인코더에 의해 결정될 수 있다. 현재 MV 레졸루션은 슬라이스 헤더의 MV 레졸루션 플래그에 의해 또한 표시될 수 있고, 대응하는 슬라이스 내의 모든 블록들은 MV 레졸루션 플래그를 공유하며, MV 레졸루션 플래그는 시퀀스 내의 모든 슬라이스에 대하여 동일한 값을 갖는다. 대안적으로, 현재 MV 레졸루션은 시퀀스 레벨의 MV 레졸루션 플래그에 의해 표시될 수 있고, 대응하는 시퀀스 내의 모든 블록들은 MV 레졸루션 플래그를 공유한다. 그러므로 현재 MV 및 시간 참조 MV의 MV 레졸루션은 항상 동일할 것이다.
본 발명의 다른 양태는 적응적 MV 레졸루션이 사용되었을 때 경계 강도 도출과 관련된 문제를 다룬다. 일 실시형태에 있어서, 블록 경계는 MV 레졸루션에 따라서 디블로킹된다. 예를 들면, MV 레졸루션이 정수 레졸루션에 대응할 때, 현재 MV 및 이웃 MV는 2만큼 좌측으로 시프팅되어, 시프팅된 현재 MV 및 시프팅된 이웃 MV로 되고, 시프팅된 현재 MV 및 시프팅된 이웃 MV는 상기 디블로킹을 위해 사용되는 경계 강도의 결정에 포함된다. 다른 예로서, MV 레졸루션이 반 픽셀(half-pixel) 레졸루션에 대응할 때, 현재 MV 및 이웃 MV는 1만큼 좌측으로 시프팅된다. 추가의 예로서, MV 레졸루션이 1/8(one-eighth) 픽셀 레졸루션에 대응할 때, 현재 MV 및 이웃 MV는 1만큼 우측으로 시프팅된다.
다른 실시형태에 있어서, MV 레졸루션이 정수 레졸루션에 대응할 때, 현재 MV와 이웃 MV 간의 수직 성분의 제1 절대 차(absolution difference) 및 현재 MV 간의 수평 성분의 제2 절대 차는 상기 디블로킹을 위해 사용되는 경계 강도를 결정하기 위해 4 대신 1의 역치와 비교된다. 다른 예로서, MV 레졸루션이 반 픽셀 레졸루션에 대응할 때, 수직 성분의 제1 절대 차 및 수평 성분의 제2 절대 차는 4 대신 2의 역치와 비교된다. 또 다른 예로서, MV 레졸루션이 1/8 픽셀 레졸루션에 대응할 때, 수직 성분의 제1 절대 차 및 수평 성분의 제2 절대 차는 4 대신 8의 역치와 비교된다.
본 발명의 다른 양태는 색 공간 변환이 적용되었을 때 신호 범위 축소를 수용하기 위해 양자화 파라미터 조정과 관련된 문제를 다룬다. 일 실시형태에 있어서, 조정된 유효 qP(양자화 파라미터)는 색 공간 변환을 고려하여 qP를 조정된 qP로 수정하고 조정된 qP가 0보다 작으면 상기 조정된 qP를 0 이상으로 설정함으로써 qP로부터 생성된다. 예를 들면, 다수의 비디오 성분은 YCrCb 색 성분에 대응하고, 하나의 색 성분에 대한 조정된 유효 양자화 파라미터(qPX')는 색 공간 변화가 현재 코딩 블록에 적용된다고 색 공간 변환 플래그가 표시하면 qPX' = Max(zero, qPX-nX)에 따르고 색 공간 변화가 현재 코딩 블록에 적용되지 않는다고 색 공간 변환 플래그가 표시하면 qPX' = Max(zero, qPX)에 따른다. 변수 nX는 Y 성분 및 Cb 성분에 대하여 5이고, nX는 Cr 성분에 대하여 3이며, Max()는 최대 함수이다. 조정된 유효 qP는 클립핑 함수를 사용하여 또한 생성될 수 있다. 예를 들면, 색 공간 변환이 적용되었을 때, (qPX-nX)는 MinQPX로부터 MaxQPX까지의 범위로 클립핑되고, 이때 MinQPX 및 MaxQPX는 하나의 색 성분에 대한 유효 최소 양자화 파라미터 및 유효 최대 양자화 파라미터에 각각 대응한다. Y 성분, Cb 성분 및 Cr 성분에 대하여 MinQPX는 0이고 MaxQPX는 51일 수 있다. 다른 실시형태에 있어서, qPX'는 색 공간 변환이 현재 코딩 블록에 적용되면 qPX의 함수에 따라 qPX로부터 생성되고, 이때 qPX의 함수는 항상 0 이상이다.
도 1은 현재 MV와 TMVP 간의 상이한 MV 레졸루션의 조건에서 현재 MV(모션 벡터)에 대한 TMVP(시간 모션 벡터 예측)의 예를 보인 도이다.
도 2는 인루프 색 공간 변환을 통합한 디코딩 시스템의 블록도이다.
도 3은 현재 슬라이스의 use_integer_mv_flag가 1과 같을 때 TMVP의 스케일링의 예를 보인 도이다.
도 4는 현재 슬라이스의 use_integer_mv_flag가 1과 같을 때 MV를 저장하기 전의 MV의 스케일링의 예를 보인 도이다.
도 5는 MV가 정수 픽셀 레졸루션을 사용하고, MV가 디블로킹 처리에서 MV 비교를 위해 사용되기 전에 MV가 2만큼 좌측으로 시프팅된 예를 보인 도이다.
도 6은 본 발명의 실시형태를 통합한 비디오 데이터의 MVP(모션 벡터 예측)의 예시적인 흐름도이다.
이하에서는 본 발명의 최상으로 예상되는 실행 모드를 설명한다. 이 설명은 본 발명의 일반적인 원리를 예시하기 위한 것이고 제한하는 의도로 해석되지 않아야 한다. 발명의 범위는 첨부된 특허 청구범위를 참고하여 최상으로 결정된다.
전술한 바와 같이, 적응적 MV(모션 벡터) 레졸루션이 사용될 때, 및 현재 MV와 대응 TMVP(시간 모션 벡터 예측)이 상이한 MV 레졸루션을 가지면, 두 MV 간에 부정합을 야기할 것이다. 따라서, TMVP 연산은 정확하게 수행하지 않을 수 있다. 적응적 MV 레졸루션을 적용할 때 MV를 조정하기 위해 몇 가지 방법이 제안된다.
일 실시형태에 있어서, TMVP(시간 모션 벡터 예측)는 현재 슬라이스의 MV가 정수 픽셀 레졸루션을 가질 때(즉, use_integer_mv_flag = 1) 현재 블록에 대한 MVP로서 사용되기 전에 우측으로 시프팅된다. 예를 들어 TMVP가 (x, y)에 대응하면, TMVP가 적용될 때 (x, y)가 MVP로서 사용되기 전에 연산 (x+offx)>>2 및 (y+offy)>>2가 수행된다. "n>>2" 연산은 n을 "2"만큼 우측으로 시프팅시키는 것에 대응하고, 이것은 "4로 나누기"와 등가이다. 업계에 잘 알려져 있는 바와 같이, "2만큼 시프팅" 연산은 "4로 나누기" 연산보다 더 효율적으로 구현될 수 있다. 파라미터 offx와 offy는 시프팅에서의 오프셋에 대응하고, 이들은 -3, -2, -1, 0, 1, 2, 3 등과 같은 임의의 정수일 수 있다. 도 3은 현재 슬라이스의 use_integer_mv_flag가 1과 같을 때 TMVP를 스케일링하는 예를 보인 것이다. 이 시나리오에서, 현재 픽처(310)의 use_integer_mv_flag는 1이고, 병치된 픽처(320)의 use_integer_mv_flag는 0이며, 참조 블록(322)의 병치된 MV(324)는 2만큼 우측으로 시프팅되어 현재 블록(312)의 현재 MV(314)에 대한 TMVP로서 사용된다.
다른 실시형태에 있어서, 현재 슬라이스의 디코딩된 MV는 현재 슬라이스의 MV가 정수 픽셀 레졸루션을 가질 때(즉, use_integer_mv_flag = 1) 저장되기 전에 좌측으로 시프팅된다. 현재 슬라이스의 디코딩된 MV는 후속 픽처에 의한 TMVP로서 사용하기 위해 저장된다. 예를 들어 현재 슬라이스의 블록 B에서의 MV가 (x, y)로서 디코딩되면, (x<<2, y<<2)가 블록 B에 대한 MV 버퍼에 저장될 것이다. 그리고 (x<<2, y<<2)는 B가 병치된 블록이면 다음 픽처에 대한 TMVP로서 취급될 것이다. 연산 "n<<2"는 n을 2만큼 좌측으로 시프팅시킨 것에 대응한다. 도 4는 현재 슬라이스의 use_integer_mv_flag가 1과 같을 때 MV를 저장하기 전에 MV를 스케일링하는 예를 보인 것이다. 이 시나리오에서, 현재 픽처(410)의 use_integer_mv_flag는 1이고, 현재 블록(412)의 현재 MV(414)는 2만큼 좌측으로 시프팅되어 스케일링된 MV(424)를 생성하고, 스케일링된 MV(424)가 메모리에 저장된다. 일 실시형태에 있어서, 메모리에 저장된 스케일링된 MV는 TMVP로서 후속 픽처에 대하여 사용될 수 있다. 다른 실시형태에 있어서, 메모리에 저장된 스케일링된 MV는 현재 슬라이스를 내포하는 현재 픽처의 다른 블록에 대한 모션 벡터 예측자(즉, 공간 모션 벡터 예측자)로서 사용되기 전에 우측으로 시프팅된다. 또 다른 실시형태에 있어서, 메모리에 저장된 스케일링된 MV는 디블로킹 처리에서 필요한 경계 강도를 결정하기 위해 사용될 수 있다.
본 응용에서, 정수 모션 벡터 레졸루션이 인에이블될 때(즉, use_integer_mv_flag가 1과 같을 때), 블록 벡터와 모션 벡터는 둘 다 정수 레졸루션으로 디코딩된다. 그리고 블록 벡터와 모션 벡터는 둘 다 분수-펠(fractional-pel) 레졸루션(예를 들면, 쿼터-펠 레졸루션)으로 저장된다. 이것은 디코딩된 블록 벡터 또는 모션 벡터를 N만큼 좌측으로 시프팅시킴으로써 행하여지고, 여기에서 N은 양의 정수(예를 들면, N=2)이다. 예를 들면, 디코딩된 모션 벡터 또는 블록 벡터는 쿼터-펠 레졸루션으로 되고, 클립핑 처리로 가며(그래서 결과적인 값은 -215와 215-1 사이와 같이 소정의 값 범위 내에 있다), 쿼터-펠 레졸루션으로 저장되도록 2만큼 좌측으로 시프팅될 것이다. 그러나 사용되는 블록 벡터 예측자와 모션 벡터 예측자는 정수 레졸루션에 있다. 이것은 벡터 예측자를 N(2와 같은 양의 정수)만큼 우측으로 시프팅시킴으로써 행하여진다. 반면에, 정수 모션 벡터 레졸루션이 디스에이블될 때(즉, use_integer_mv_flag가 0과 같을 때), 블록 벡터와 모션 벡터는 둘 다 분수-펠 레졸루션으로 디코딩된다. 그리고 블록 벡터와 모션 벡터는 둘 다 임의의 시프팅 연산 없이 분수-펠 레졸루션(예를 들면, 쿼터-펠 레졸루션)으로 저장된다. 그리고 사용되는 블록 벡터 예측자와 모션 벡터 예측자는 분수-펠 레졸루션(예를 들면, 쿼터-펠 레졸루션)에 있다. 예를 들면, 디코딩된 모션 벡터 또는 블록 벡터는 클립핑 처리로 가고(그래서 결과적인 값은 -215와 215-1 사이와 같이 소정의 값 범위 내에 있다), 쿼터-펠 레졸루션으로 저장될 것이다. 클립핑이 MV(또는 BV)의 도출시에 행하여지기 때문에, 모션 보상(보간) 전에 여분의 클립핑 동작을 행할 필요가 없다. 또한, 저장된 벡터가 정수 MV를 예측하기 위해 사용될 때, 예측자는 예측이 이루어지기 전에 정수-펠 레졸루션으로 되도록 (예를 들면, 2만큼) 우측으로 시프팅되어야 한다. 일 실시형태에 있어서, predFlagLX가 1과 같고 슬라이스의 참조 픽처 리스트 LX로부터 인덱스 refIdx를 가진 픽처가 현재 픽처가 아닐 때, 루마 모션 벡터(mvLX)는 다음과 같이 도출된다.
Figure pct00007
상기 식에서, mvpLX[0]와 mvpLX[1]은 모션 벡터 예측자와 관련된 모션 벡터 성분에 대응하고, mvdLX[0]와 mvdLX[1]은 리스트 LX 내의 모션 벡터 예측자와 현재 모션 벡터 간의 모션 벡터 차에 대응하며, 여기에서 X는 0 또는 1과 같다.
저장된 블록 벡터 또는 모션 벡터는 블록 벡터 또는 모션 벡터 예측시에 벡터 예측자로서 사용된다. 예측 대상 벡터를 내포하는 슬라이스가 정수 모션 벡터를 사용하면(슬라이스 레벨 플래그 "use_integer_mv_flag"가 참 또는 1과 같음), 벡터 예측자는 예측이 생성하기 전에 정수 레졸루션으로 만들기 위해 N(N은 2와 같은 정수이다)만큼 우측으로 시프팅된다. 예측 대상 벡터를 내포하는 슬라이스가 분수-펠 모션 벡터를 사용하면(슬라이스 레벨 플래그 "use_integer_mv_flag"가 거짓(false)임), 벡터 예측자는 임의의 시프팅 연산 없이 직접 사용된다.
저장된 블록 벡터와 모션 벡터는 보간 필터 및 디블로킹 필터의 입력으로서 사용된다.
대안적인 해법으로, use_integer_mv_flag는 저장되고, 그래서 use_integer_mv_flag가 다음 픽처에 의해 판독되어 디코딩된 MV를 스케일링해야 하는지를 결정하기 위해 사용될 수 있다.
또 다른 실시형태에 있어서, TMVP는 현재 슬라이스의 use_integer_mv_flag 및 병치된 픽처의 use_integer_mv_flag에 따라서 상이하게 수행된다.
예를 들어, 현재 슬라이스의 MV가 정수 픽셀 레졸루션을 갖고 병치된 픽처의 MV가 쿼터 픽셀 레졸루션을 가질 때, TMVP는 현재 블록의 MVP로서 사용되기 전에 우측으로 시프팅될 수 있다. TMVP가 (x, y)에 대응하면, TMVP가 적용될 때 ((x+offx)>>2, (y+offy)>>2)가 MVP로서 사용된다. offx와 offy는 시프팅에서의 오프셋이고, 이들은 -3, -2, -1, 0, 1, 2, 3 등과 같은 임의의 값일 수 있다.
다른 예로서, TMVP는 현재 슬라이스의 MV가 쿼터 픽셀 레졸루션을 갖고 병치된 픽처의 MV가 정수 픽셀 레졸루션을 가질 때 현재 블록의 MVP로서 사용되기 전에 좌측으로 시프팅될 수 있다. TMVP가 (x, y)에 대응하면, TMVP가 적용될 때 (x<<2, y<<2)가 MVP로서 사용되어야 한다.
일 실시형태에 있어서, 현재 슬라이스의 MV와 병치된 픽처의 MV는 동일한 레졸루션을 갖도록 강제된다. 다시 말해서, 현재 슬라이스의 use_integer_mv_flag와 병치된 픽처의 use_integer_mv_flag는 동일해야 한다.
다른 실시형태에 있어서, TMVP는 현재 슬라이스의 MV와 병치된 픽처의 MV가 상이한 레졸루션을 가지면 디스에이블된다. 다시 말해서, 현재 슬라이스의 use_integer_mv_flag와 병치된 픽처의 use_integer_mv_flag가 상이하면, TMVP는 현재 MV에 대하여 디스에이블된다.
또 다른 실시형태에 있어서, 현재 슬라이스의 use_integer_mv_flag와 병치된 픽처의 use_integer_mv_flag가 상이하면, 참조 픽처가 현재 슬라이스에 대한 병치된 픽처로서 사용되지 않을 것이다.
또 다른 실시형태에 있어서, 시퀀스 내의 모든 슬라이스들은 동일한 MV 픽셀 레졸루션을 갖도록 강제된다. 다시 말해서, 시퀀스 내의 모든 슬라이스의 use_integer_mv_flag는 동일하다.
또 다른 실시형태에 있어서, use_integer_mv_flag는 슬라이스 레벨 대신에 시퀀스 레벨(예를 들면, SPS)로 전송된다. 시퀀스 레벨에서의 use_integer_mv_flag가 1의 값을 가지면, 시퀀스 내의 모든 슬라이스의 MV 레졸루션은 정수 픽셀이다. 그렇지 않으면, 시퀀스 내의 모든 슬라이스의 MV 레졸루션은 쿼터 픽셀이다.
일 실시형태에 있어서, MV는 MV 픽셀 레졸루션에 기초하여 스케일링 후에 클립된다. 예를 들면, 리스트 L0 및 L1에 대한 모션 벡터 값 MVL0 및 MVL1은 각각 2만큼 좌측으로 시프팅된 후에 [-215, 215-1]로 클립핑되어야 한다. 다시 말해서, MVL0 = Max(-215, Min(MVL0<<2, 215-1)) 및 MVL1 = Max(-215, Min(MVL1<<2, 215-1))이다. 특히 이 클립핑은 식 1에 나타낸 바와 같이 JCTVC-S1005에 따른 MV 스케일링을 위해 행하여져야 한다.
다른 실시형태에 있어서, 디코딩된 MV는 현재 슬라이스의 use_integer_mv_flag가 0인지 또는 1인지에 따라서 상이한 범위로 제한될 수 있다. 범위는 use_integer_mv_flag = 0인 경우의 범위보다 use_integer_mv_flag = 1인 경우에 더 엄격하여야 한다. 예를 들면, 범위는 다음과 같이 특정될 수 있다.
use_integer_mv_flag==0이면, -215<=mvL0, mvL1<=215-1, 및
use_integer_mv_flag==1이면, -213<=mvL0, mvL1<=213-1.
전술한 실시형태에 있어서, 블록 벡터 및 모션 벡터의 레졸루션은 현재 픽처가 참조 픽처들 중의 하나로서 사용될 때 단일화된다. 즉, 슬라이스 내 블록 벡터의 레졸루션은 동일 슬라이스 내 정규 모션 벡터의 레졸루션과 동일하다.
전술한 바와 같이, MV 레졸루션과 관련된 디블로킹에 관한 문제가 또한 생성한다. 적응적 MV 레졸루션 및 디블로킹을 조화시키기 위해 몇 가지 방법이 이하에서 개시된다.
일 실시형태에 있어서, 디블로킹은 상이한 MV 레졸루션이 사용되는 경우에 상이하게 수행된다. 예를 들면, 디블로킹은 use_integer_mv_flag에 따라서 상이하게 수행될 수 있다. MV가 정수 픽셀 레졸루션을 사용하면(즉, use_integer_mv_flag=1), MV는 MV가 도 5에 도시된 것처럼 디블로킹 처리에서 MV 비교를 위해 사용되기 전에 2만큼 좌측으로 시프팅된다(즉, MVx=MVx<<2 및 MVy=MVy<<2). 도 5에 있어서, 단계 510에서는 정수 MV 레졸루션이 사용되는지 결정하기 위해 use_integer_mv_flag의 값이 체크된다. "use_integer_mv_flag=1"이 참이면(즉, 단계 510으로부터 "예" 경로), MV는 단계 530에서의 디블로킹 처리에서 MV 비교를 위해 MV를 사용하기 전에 단계 520에서 스케일링된다. "use_integer_mv_flag=1"이 거짓이면(즉, 단계 510으로부터 "아니오" 경로), MV는 스케일링 없이 단계 530에서의 디블로킹 처리에서 MV 비교를 위해 직접 사용된다.
다른 실시형태에 있어서, MV가 정수 픽셀 레졸루션을 사용하는 경우(즉, use_integer_mv_flag=1)에는 모션 벡터의 수평 또는 수직 성분 간의 절대 차가 4 대신에 1의 역치와 비교된다.
MV가 반 픽셀 레졸루션을 사용하면, MV는 일 실시형태에 따라 디블로킹 처리에서 MV 비교를 위해 사용되기 전에 1만큼 좌측으로 시프팅된다(즉, MVx=MVx<<1 및 MVy=MVy<<1).
MV가 1/8 픽셀 레졸루션을 사용하면, MV는 디블로킹 처리에서 MV 비교를 위해 사용되기 전에 1만큼 우측으로 시프팅된다(즉, MVx=MVx>>1 및 MVy=MVy>>1, 또는 MVx=(MVx+1)>>1 및 MVy=(MVy+1)>>1).
MV가 반 픽셀 레졸루션을 사용하면, 모션 벡터의 수평 또는 수직 성분 간의 절대 차는 4 대신에 2의 역치와 비교된다.
MV가 1/8 픽셀 레졸루션을 사용하면, 모션 벡터의 수평 또는 수직 성분 간의 절대 차는 4 대신에 8의 역치와 비교된다.
또 다른 실시형태에 있어서, 디블로킹은 정수 픽셀 레졸루션이 사용되는 경우(즉, use_integer_mv_flag=1)에 수행되지 않는다.
전술한 실시형태에서는 현재 MV 레졸루션, 참조 MV 레졸루션, 또는 현재 MV 레졸루션과 참조 MV 레졸루션 둘 다에 따라서 현재 MV에 MVP를 적용하거나 현재 MV를 저장하는 예로서 시간 모션 벡터 예측을 사용하였다. 본 발명은 공간 MVP 또는 인터뷰 MVP와 같은 다른 유형의 MVP에도 또한 적용할 수 있다.
전술한 바와 같이, 색 공간 변환은 색 공간 변환이 적용될 때 디코더 시스템에 대한 문제를 또한 야기할 수 있다. 종래의 디코더 구현예에 따르면, 수신된 QP(양자화 파라미터)는 본래 QP로부터 5 또는 3을 감산함으로써 조정된다. 따라서, 조정된 QP는 음으로 될 수 있다. 적응적 색 공간 변환이 적용될 때 QP가 항상 유효 범위 내에 있게 하기 위해, QP 조정을 위한 몇 가지 방법이 개시된다.
일 실시형태에 있어서, 조정 후의 QP는 하기 연산 중의 하나에 따라 항상 0보다 작지 않다.
[식 8]
Figure pct00008
[식 9]
Figure pct00009
[식 10]
Figure pct00010
상기 식에서 Max()는 최대 함수에 대응한다. 다른 실시형태에 있어서, 조정된 QP는 색 공간 변환에 기인하는 신호 범위 축소를 수용하도록 QP가 조정된 후에 유효 범위로 클립핑된다. 예를 들면, 상기 식은 다음과 같이 재작성될 수 있다.
[식 11]
Figure pct00011
[식 12]
Figure pct00012
[식 13]
Figure pct00013
상기 식에서, clip(a, b, x)는 변수 x를 a부터 b까지의 범위로 클립핑하는 클립핑 함수이다. MinQPY, MinQPCb 및 MinQPCr은 Y, Cb 및 Cr에 대한 최소 클립핑 값에 각각 대응한다. MaxQPY, MaxQPCb 및 MaxQPCr은 Y, Cb 및 Cr에 대한 최대 클립핑 값에 각각 대응한다. 예를 들면, MinQPY는 0으로 설정되고 MaxQPY는 51로 설정될 수 있으며; MinQPCb는 0으로 설정되고 MaxQPCb는 51로 설정될 수 있으며; MinQPCr은 0으로 설정되고 MaxQPCr은 51로 설정될 수 있다.
다른 예로서, MinQPCb 및/또는 MaxQPCb는 MinQPY 및/또는 MaxQPY에 따라 각각 설정될 수 있다. 유사하게, MinQPCr 및/또는 MaxQPCr은 MinQPY 및/또는 MaxQPY에 따라 각각 설정될 수 있다.
또 다른 실시형태에 있어서, QP는 적응적 색 공간 변환이 사용되면 함수에 따라 유효 범위 내에서 계산된다. 예를 들면, 식 4, 5 및 6은 다음과 같이 재작성될 수 있다.
[식 14]
Figure pct00014
[식 15]
Figure pct00015
[식 16]
Figure pct00016
fY(), fCb() 및 fCr()의 반환값은 0 이상이다. 예를 들면, 함수 fY(Qp'Y)는 (Qp'Y-5+OffsetY1+OffsetY2)%OffsetY1에 대응할 수 있다. 함수 fCb(Qp'Cb)는 (Qp'Cb-5+OffsetCb1+OffsetCb2)%OffsetCb1에 대응할 수 있다. 유사하게, 함수 fCr(Qp'Cr)은 (Qp'Cr-3+OffsetCr1+OffsetCr2)%OffsetCr1에 대응할 수 있다. 예를 들면, OffsetY1, OffsetCb1 및 OffsetCr1은 모두 51로 설정될 수 있다.
또 다른 실시형태에 있어서, 조정된 QP가 0보다 더 낮아지지 않도록 인코더 측에서 제한이 적용될 수 있다. 식 1, 2 및 3이 하나 이상의 qP<0을 생성하면, 비트스트림은 불법으로서 간주된다. 다른 실시형태에 있어서, 적응적 색 공간 변환은 식 1, 2 및 3이 하나 이상의 qP<0을 생성하면 턴 오프되어야 한다.
도 6은 본 발명의 실시형태를 통합한 비디오 데이터에 대한 MVP(모션 벡터 예측)의 예시적인 흐름도를 보인 것이다. 단계 610에서, 시스템은 현재 슬라이스 내의 현재 블록에 대한 현재 MV(모션 벡터)와 관련된 입력 데이터를 수신한다. 입력 데이터는 버퍼의 컴퓨터 메모리(RAM 또는 DRAM)와 같은 스토리지로부터 검색될 수 있다. 입력 데이터는 또한 처리 유닛과 같은 프로세서 또는 디지털 신호로부터 수신될 수 있다. 인코더 측에서, 입력 데이터는 예측 대상의 현재 MV에 대응할 수 있다. 디코더 측에서, 입력 데이터는 디코딩 대상의 코딩된 MV 데이터에 대응할 수 있다. 단계 620에서, 현재 MV에 대한 현재 MV 레졸루션, 참조 픽처 내 참조 블록과 관련된 참조 MV에 대한 참조 MV 레졸루션, 또는 상기 현재 MV 레졸루션과 상기 참조 MV 레졸루션 둘 다가 결정된다. 단계 630에서, 현재 MV 레졸루션, 참조 MV 레졸루션, 또는 현재 MV 레졸루션과 참조 MV 레졸루션 둘 다에 따라서 현재 MV에 MVP 코딩이 적용되거나 또는 현재 MV가 저장된다.
전술한 설명은 당업자가 특정 응용 및 그 필요조건과 관련하여 제공된 대로 본 발명을 실시할 수 있게 하기 위해 제시된다. 당업자에게는 설명한 실시형태에 대한 각종 수정이 명백할 것이고, 여기에서 규정된 일반 원리는 다른 실시형태에 적용될 수 있다. 그러므로 본 발명은 도시되고 설명된 특정 실시형태로 제한되지 않고, 여기에서 개시된 원리 및 신규 특징과 일치하는 최광의의 범위로 고려되어야 한다. 전술한 상세한 설명에서, 본 발명의 완전한 이해를 제공하기 위해 각종의 특정 세부들이 설명되었다. 그러나 당업자라면 그러한 세부 없이 본 발명이 실시될 수 있다는 것을 이해할 것이다.
전술한 본 발명의 실시형태는 각종 하드웨어, 소프트웨어 코드 또는 이들의 조합으로 구현될 수 있다. 예를 들면, 본 발명의 실시형태는 여기에서 설명한 처리를 수행하도록 비디오 압축 칩에 집적된 하나 이상의 회로 또는 비디오 압축 소프트웨어에 통합된 프로그램 코드일 수 있다. 본 발명의 실시형태는 또한 여기에서 설명한 처리를 수행하도록 디지털 신호 프로세서(DSP)에서 실행되는 프로그램 코드일 수 있다. 본 발명은 컴퓨터 프로세서, 디지털 신호 프로세서, 마이크로프로세서 또는 현장 프로그램가능 게이트 어레이(FPGA)에 의해 수행되는 다수의 기능을 또한 수반할 수 있다. 이러한 프로세서들은 본 발명에 의해 구현되는 특수 방법들을 규정하는 기계 판독가능 소프트웨어 코드 또는 펌웨어 코드를 실행함으로써, 본 발명에 따른 특정 태스크를 수행하도록 구성될 수 있다. 상기 소프트웨어 코드 또는 펌웨어 코드는 상이한 프로그래밍 언어 및 상이한 포맷 또는 스타일로 개발될 수 있다. 상기 소프트웨어 코드는 상이한 타겟 플랫폼용으로 또한 컴파일될 수 있다. 그러나 소프트웨어 코드의 상이한 코드 포맷, 스타일 및 언어, 및 본 발명에 따른 태스크를 수행하도록 코드를 구성하는 다른 수단은 본 발명의 정신 및 범위로부터 벗어나지 않을 것이다.
본 발명은 그 정신 또는 본질적 특성으로부터 벗어나지 않고 다른 특정 형태로 구현될 수 있다. 전술한 예들은 모든 점에서 예시하는 것이지 제한하는 것이 아닌 것으로 생각하여야 한다. 그러므로 본 발명의 범위는 전술한 상세한 설명보다는 첨부된 특허 청구범위에 의해 규정된다. 특허 청구범위의 균등물의 의미 및 범위 내에 있는 모든 변화들은 본 발명의 범위 내에 포함되어야 한다.

Claims (30)

  1. 비디오 데이터에 대한 MVP(motion vector prediction, 모션 벡터 예측) 방법에 있어서,
    현재 슬라이스 내의 현재 블록에 대한 현재 MV(motion vector, 모션 벡터)와 관련된 입력 데이터를 수신하는 단계;
    상기 현재 MV에 대한 현재 MV 레졸루션(resolution), 참조 픽처 내 참조 블록과 관련된 참조 MV에 대한 참조 MV 레졸루션, 또는 상기 현재 MV 레졸루션과 상기 참조 MV 레졸루션 둘 다를 결정하는 단계; 및
    상기 현재 MV 레졸루션, 상기 참조 MV 레졸루션, 또는 상기 현재 MV 레졸루션과 상기 참조 MV 레졸루션 둘 다에 따라서 상기 현재 MV에 MVP 코딩을 적용하거나 또는 상기 현재 MV를 저장하는 단계를 포함하는, MVP 방법.
  2. 제1항에 있어서, 상기 참조 픽처 내 참조 블록과 관련된 참조 MV는, 상기 참조 픽처 내 시간(temporal) 참조 블록과 관련된 시간 MV에 대응하는 것인, MVP 방법.
  3. 제2항에 있어서, 상기 현재 MV 레졸루션이 정수(integer) 픽셀 레졸루션에 대응할 때, 상기 현재 MV에 MVP 코딩을 적용하는 단계는 수정된(modified) 시간 MV를 상기 현재 MV에 대한 모션 벡터 예측자(predictor)로서 사용하고, 상기 수정된 시간 MV는 상기 시간 MV를 우측으로 시프팅시킴으로써 생성되는 것인, MVP 방법.
  4. 제3항에 있어서, 상기 시간 MV가 우측으로 시프팅되어 상기 수정된 시간 MV를 생성하기 전에 상기 시간 MV에 오프셋이 추가되는 것인, MVP 방법.
  5. 제2항에 있어서, 상기 현재 MV 레졸루션이 정수 픽셀 레졸루션에 대응할 때, 상기 현재 MV는 메모리에 저장되기 전에 좌측으로 시프팅되는 것인, MVP 방법.
  6. 제5항에 있어서, 상기 메모리에 저장된 상기 현재 MV는 후속 MV에 대하여 사용되는 것인, MVP 방법.
  7. 제5항에 있어서, 상기 메모리에 저장된 상기 현재 MV는, 상기 현재 슬라이스를 내포한 현재 픽처 내 다른 블록에 대한 모션 벡터 예측자로서 사용되기 전에 우측으로 시프팅되는 것인, MVP 방법.
  8. 제2항에 있어서, 상기 현재 MV 레졸루션이 정수 픽셀 레졸루션에 대응할 때, 상기 현재 MV는 디블로킹(deblocking) 처리에 사용되는 경계 강도(boundary strength)의 결정에 사용되기 전에 좌측으로 시프팅되는 것인, MVP 방법.
  9. 제2항에 있어서, 상기 현재 MV 레졸루션에 관계된 구문 요소(syntax element)가 후속 MV의 MVP 코딩을 위해 메모리에 저장되는 것인, MVP 방법.
  10. 제2항에 있어서, 상기 현재 MV 레졸루션이 비정수(non-integer) 픽셀 레졸루션에 대응하고 상기 참조 MV 레졸루션이 정수 픽셀 레졸루션에 대응할 때, 상기 현재 MV에 MVP 코딩을 적용하는 단계는 수정된 시간 MV를 상기 현재 MV에 대한 모션 벡터 예측자로서 사용하고, 상기 수정된 시간 MV는 상기 시간 MV를 좌측으로 시프팅시킴으로써 생성되는 것인, MVP 방법.
  11. 제2항에 있어서, 상기 현재 MV 레졸루션이 상기 참조 MV 레졸루션과 상이할 때, 상기 현재 MV에 MVP 코딩을 적용하는 단계는 상기 현재 블록에 대하여 상기 MVP 코딩을 디스에이블하는 것인, MVP 방법.
  12. 제2항에 있어서, 상기 현재 MV 레졸루션이 상기 참조 MV 레졸루션과 상이할 때, 상기 현재 MV에 MVP 코딩을 적용하는 단계는 상기 현재 블록의 MVP 코딩에 대하여 상기 참조 픽처를 무시하는 것인, MVP 방법.
  13. 제2항에 있어서, 상기 현재 MV 레졸루션 또는 상기 참조 MV 레졸루션에 각각 기인하여 상기 현재 MV 또는 상기 시간 MV에 시프팅 연산이 적용되었을 때, 상기 시프팅된 현재 MV 또는 상기 시프팅된 시간 MV는 유효 범위로 클립핑(clipping)되는 것인, MVP 방법.
  14. 제2항에 있어서, 상기 현재 MV는 상이한 현재 MV 레졸루션들에 대하여 상이한 범위를 갖거나, 또는 상기 시간 MV는 상이한 참조 MV 레졸루션에 대하여 상이한 범위를 갖는 것인, MVP 방법.
  15. 제2항에 있어서, 상기 현재 MV 레졸루션이 상기 참조 MV 레졸루션과 동일한 값을 갖게 하기 위해, 상기 현재 MV 레졸루션을 표시하는 제1 구문 요소와 상기 참조 MV 레졸루션을 표시하는 제2 구문 요소가 인코더에 의해 결정되는 것인, MVP 방법.
  16. 제2항에 있어서, 상기 현재 MV 레졸루션은 슬라이스 헤더(header) 내의 MV 레졸루션 플래그(flag)에 의해 표시되고, 대응하는 슬라이스 내의 모든 블록들은 상기 MV 레졸루션 플래그를 공유하는 것인, MVP 방법.
  17. 제2항에 있어서, 상기 현재 MV 레졸루션은 시퀀스 레벨에 있는 MV 레졸루션 플래그에 의해 표시되고, 대응하는 시퀀스 내의 모든 블록들은 상기 MV 레졸루션 플래그를 공유하는 것인, MVP 방법.
  18. 재구성된 비디오 데이터에 대한 디블로킹 방법에 있어서,
    현재 슬라이스 내의 재구성된 현재 블록과 관련된 입력 데이터를 수신하는 단계;
    상기 현재 슬라이스와 관련된 MV(motion vector, 모션 벡터) 레졸루션을 결정하는 단계;
    상기 재구성된 현재 블록과 관련된 현재 MV를 결정하는 단계;
    상기 현재 슬라이스 내 재구성된 이웃 블록과 관련되고 상기 재구성된 현재 블록의 블록 경계에 인접한 이웃 MV를 결정하는 단계; 및
    상기 MV 레졸루션에 따라 상기 블록 경계를 디블로킹하는 단계를 포함하는, 재구성된 비디오 데이터 디블로킹 방법.
  19. 제18항에 있어서, 상기 MV 레졸루션이 정수 레졸루션에 대응할 때, 상기 현재 MV 및 상기 이웃 MV는 2만큼 좌측으로 시프팅되어, 시프팅된 현재 MV 및 시프팅된 이웃 MV로 되고, 상기 시프팅된 현재 MV 및 상기 시프팅된 이웃 MV는 상기 디블로킹을 위해 사용되는 경계 강도의 결정에 포함되는 것인, 재구성된 비디오 데이터 디블로킹 방법.
  20. 제18항에 있어서, 상기 MV 레졸루션이 반 픽셀(half-pixel) 레졸루션에 대응할 때, 상기 현재 MV 및 상기 이웃 MV는 1만큼 좌측으로 시프팅되어, 시프팅된 현재 MV 및 시프팅된 이웃 MV로 되고, 상기 시프팅된 현재 MV 및 상기 시프팅된 이웃 MV는 상기 디블로킹을 위해 사용되는 경계 강도의 결정에 포함되는 것인, 재구성된 비디오 데이터 디블로킹 방법.
  21. 제18항에 있어서, 상기 MV 레졸루션이 1/8(one-eighth) 픽셀 레졸루션에 대응할 때, 상기 현재 MV 및 상기 이웃 MV는 1만큼 우측으로 시프팅되어, 시프팅된 현재 MV 및 시프팅된 이웃 MV로 되고, 상기 시프팅된 현재 MV 및 상기 시프팅된 이웃 MV는 상기 디블로킹을 위해 사용되는 경계 강도의 결정에 포함되는 것인, 재구성된 비디오 데이터 디블로킹 방법.
  22. 제18항에 있어서, 상기 MV 레졸루션이 정수 레졸루션에 대응할 때, 상기 현재 MV와 상기 이웃 MV 간의 수직 성분에서의 제1 절대 차(absolution difference) 및 상기 현재 MV 간의 수평 성분에서의 제2 절대 차가 상기 디블로킹을 위해 사용되는 경계 강도를 결정하기 위해 4 대신 1의 역치(threshold value)와 비교되는 것인, 재구성된 비디오 데이터 디블로킹 방법.
  23. 제18항에 있어서, 상기 MV 레졸루션이 반 픽셀 레졸루션에 대응할 때, 상기 현재 MV와 상기 이웃 MV 간의 수직 성분에서의 제1 절대 차 및 상기 현재 MV 간의 수평 성분에서의 제2 절대 차가 상기 디블로킹을 위해 사용되는 경계 강도를 결정하기 위해 4 대신 2의 역치와 비교되는 것인, 재구성된 비디오 데이터 디블로킹 방법.
  24. 제18항에 있어서, 상기 MV 레졸루션이 1/8 픽셀 레졸루션에 대응할 때, 상기 현재 MV와 상기 이웃 MV 간의 수직 성분에서의 제1 절대 차 및 상기 현재 MV 간의 수평 성분에서의 제2 절대 차가 상기 디블로킹을 위해 사용되는 경계 강도를 결정하기 위해 4 대신 8의 역치와 비교되는 것인, 재구성된 비디오 데이터 디블로킹 방법.
  25. 색(color) 비디오 데이터 - 상기 색 비디오 데이터는 다수의 비디오 성분들을 포함하고 인코딩 처리는 색 공간(color-space) 변환을 포함함 - 에 대한 비디오 디코딩 방법에 있어서,
    현재 코딩 블록과 관련된 코딩 데이터(coded data)를 수신하는 단계;
    상기 현재 코딩 블록에 대한 상기 코딩 데이터로부터 색 성분(component)들 및 색 공간 변환 플래그에 대한 qP(quantization parameter, 양자화 파라미터)들을 결정하는 단계;
    상기 색 공간 변환이 상기 현재 코딩 블록에 적용된 것을 상기 색 공간 변환 플래그가 표시하면,
    상기 qP들로부터 조정된 유효(valid) qP들을 생성하는 단계 - 상기 조정된 유효 qP들을 생성하는 단계는 상기 qP들을 상기 색 공간 변환을 고려하여 조정된 qP들로 수정하는 단계 및 상기 조정된 qP들이 0보다 작으면 상기 조정된 qP들을 0 이상으로 설정하는 단계를 포함함 - ;
    상기 조정된 유효 qP들을 사용하여 상기 현재 코딩 블록과 관련된 양자화된 변환 계수들을 역 양자화(de-quantizing)하여 디코딩된 변환 계수들을 생성하는 단계;
    상기 디코딩된 변환 계수들에 역변환(inverse transform)을 적용하여 제1의 재구성된 중간 코딩 블록을 생성하는 단계;
    상기 제1의 중간 코딩 블록 또는 처리된 제1의 중간 코딩 블록에 역 색 공간 변환을 적용하여 제2의 재구성된 중간 코딩 블록을 생성하는 단계; 및
    상기 제2의 재구성된 중간 코딩 블록을 추가로 처리하여 재구성된 최종 코딩 블록을 생성하는 단계를 포함하는, 비디오 디코딩 방법.
  26. 제25항에 있어서, 상기 다수의 비디오 성분들은 YCrCb 색 성분들에 대응하고, 상기 qP들로부터 상기 조정된 유효 qP들을 생성하는 단계는, 상기 색 공간 변환이 상기 현재 코딩 블록에 적용된 것을 상기 색 공간 변환 플래그가 표시하면 qPX'=Max(0, qPX-nX)에 따라서 및 상기 색 공간 변환이 상기 현재 코딩 블록에 적용되지 않은 것을 상기 색 공간 변환 플래그가 표시하면 qPX'=Max(0, qPX)에 따라서 하나의 색 성분에 대한 조정된 유효 양자화 파라미터(qPX')를 생성하는 단계에 대응하며, 여기서 qPX는 하나의 색 성분에 대한 양자화 파라미터에 대응하고, nX는 Y 성분 및 Cb 성분에 대하여 5이며, nX는 Cr 성분에 대하여 3이고, Max()는 최대 함수인 것인, 비디오 디코딩 방법.
  27. 제25항에 있어서, 상기 조정된 qP들을 0 이상으로 설정하는 단계는, 상기 조정된 qP들을 최소 qP들로부터 최대 qP들까지의 범위로 클립핑하는 단계에 대응하는 것인, 비디오 디코딩 방법.
  28. 제25항에 있어서, 상기 다수의 비디오 성분들은 YCrCb 색 성분들에 대응하고, 상기 qP들로부터 상기 조정된 유효 qP들을 생성하는 단계는, 상기 색 공간 변환이 상기 현재 코딩 블록에 적용된 것을 상기 색 공간 변환 플래그가 표시하면 (qPX-nX)를 MinQPX로부터 MaxQPX까지의 범위로 클립핑함으로써 하나의 색 성분에 대한 양자화 파라미터(qPX)로부터 조정된 유효 양자화 파라미터(qPX')를 생성하는 단계에 대응하며, 여기서 MinQPX와 MaxQPX는 각각 하나의 색 성분에 대한 유효 최소 양자화 파라미터 및 유효 최대 양자화 파라미터에 대응하고, nX는 Y 성분 및 Cb 성분에 대하여 5이고 nX는 Cr 성분에 대하여 3인 것인, 비디오 디코딩 방법.
  29. 제28항에 있어서, 상기 Y 성분, Cb 성분 및 Cr 성분에 대하여 MinQPX가 0이고 MaxQPX가 51인 것인, 비디오 디코딩 방법.
  30. 제25항에 있어서, 상기 qP들로부터 조정된 유효 qP들을 생성하는 단계는 상기 색 공간 변환이 상기 현재 코딩 블록에 적용되면 qPX의 함수에 따라 하나의 색 성분에 대하여 양자화 파라미터(qPX)로부터 조정된 유효 양자화 파라미터(qPX')를 생성하는 단계에 대응하고, 상기 qPX의 함수는 항상 0 이상인 것인, 비디오 디코딩 방법.
KR1020177010070A 2014-09-30 2015-09-30 비디오 코딩을 위한 적응적 모션 벡터 레졸루션 방법 KR102068828B1 (ko)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
PCT/CN2014/088017 WO2016049894A1 (en) 2014-09-30 2014-09-30 Scaling in color transform
CNPCT/CN2014/088017 2014-09-30
PCT/CN2015/071553 WO2016119104A1 (en) 2015-01-26 2015-01-26 Motion vector regularization
CNPCT/CN2015/071553 2015-01-26
CNPCT/CN2015/072175 2015-02-03
PCT/CN2015/072175 WO2016123749A1 (en) 2015-02-03 2015-02-03 Deblocking filtering with adaptive motion vector resolution
US201562154373P 2015-04-29 2015-04-29
US62/154,373 2015-04-29
US201562182685P 2015-06-22 2015-06-22
US62/182,685 2015-06-22
PCT/CN2015/091275 WO2016050219A1 (en) 2014-09-30 2015-09-30 Method of adaptive motion vetor resolution for video coding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020207001441A Division KR102115715B1 (ko) 2014-09-30 2015-09-30 비디오 코딩을 위한 적응적 모션 벡터 레졸루션 방법

Publications (2)

Publication Number Publication Date
KR20170065542A true KR20170065542A (ko) 2017-06-13
KR102068828B1 KR102068828B1 (ko) 2020-01-22

Family

ID=55629454

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020177010070A KR102068828B1 (ko) 2014-09-30 2015-09-30 비디오 코딩을 위한 적응적 모션 벡터 레졸루션 방법
KR1020207001441A KR102115715B1 (ko) 2014-09-30 2015-09-30 비디오 코딩을 위한 적응적 모션 벡터 레졸루션 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020207001441A KR102115715B1 (ko) 2014-09-30 2015-09-30 비디오 코딩을 위한 적응적 모션 벡터 레졸루션 방법

Country Status (6)

Country Link
US (2) US10455231B2 (ko)
EP (1) EP3189660B1 (ko)
KR (2) KR102068828B1 (ko)
CN (3) CN107079164B (ko)
CA (1) CA2961681C (ko)
WO (1) WO2016050219A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019168347A1 (ko) * 2018-02-28 2019-09-06 삼성전자 주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2020071672A1 (ko) * 2018-10-02 2020-04-09 엘지전자 주식회사 움직임 벡터를 압축하는 방법 및 그 장치

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200014945A (ko) * 2014-03-14 2020-02-11 브이아이디 스케일, 인크. Rgb 비디오 코딩 향상을 위한 시스템 및 방법
US10455231B2 (en) * 2014-09-30 2019-10-22 Hfi Innovation Inc. Method of adaptive motion vector resolution for video coding
US20160337662A1 (en) * 2015-05-11 2016-11-17 Qualcomm Incorporated Storage and signaling resolutions of motion vectors
US10200713B2 (en) 2015-05-11 2019-02-05 Qualcomm Incorporated Search region determination for inter coding within a particular picture of video data
US10812822B2 (en) * 2015-10-02 2020-10-20 Qualcomm Incorporated Intra block copy merge mode and padding of unavailable IBC reference region
EP3264768A1 (en) 2016-06-30 2018-01-03 Thomson Licensing Method and apparatus for video coding with adaptive motion information refinement
KR20180043151A (ko) * 2016-10-19 2018-04-27 에스케이텔레콤 주식회사 영상 부호화 또는 복호화를 위한 장치 및 방법
WO2018110203A1 (ja) * 2016-12-16 2018-06-21 シャープ株式会社 動画像復号装置、および動画像符号化装置
CN109963155B (zh) * 2017-12-23 2023-06-06 华为技术有限公司 图像块的运动信息的预测方法、装置及编解码器
US11202079B2 (en) 2018-02-05 2021-12-14 Tencent America LLC Method and apparatus for video decoding of an affine model in an intra block copy mode
US10523948B2 (en) 2018-02-05 2019-12-31 Tencent America LLC Method and apparatus for video coding
US10687071B2 (en) 2018-02-05 2020-06-16 Tencent America LLC Method and apparatus for video coding
US10638137B2 (en) 2018-03-07 2020-04-28 Tencent America LLC Method and apparatus for video coding
US10462483B1 (en) 2018-04-26 2019-10-29 Tencent America LLC Method and apparatus for video coding
US10448025B1 (en) 2018-05-11 2019-10-15 Tencent America LLC Method and apparatus for video coding
US11109025B2 (en) 2018-06-04 2021-08-31 Tencent America LLC Method and apparatus for sub-block based temporal motion vector prediction
WO2019244051A1 (en) 2018-06-19 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Selected mvd precision without mvp truncation
US10448026B1 (en) * 2018-07-09 2019-10-15 Tencent America LLC Method and apparatus for block vector signaling and derivation in intra picture block compensation
US10904559B2 (en) 2018-07-13 2021-01-26 Tencent America LLC Block vector prediction in intra block copy mode
US11019331B2 (en) 2018-07-16 2021-05-25 Tencent America LLC Method and apparatus for video coding with prediction information
US10798376B2 (en) 2018-07-17 2020-10-06 Tencent America LLC Method and apparatus for video coding
CN117692632A (zh) * 2018-07-31 2024-03-12 寰发股份有限公司 用于视频编解码的利用运动向量差的合并方法和装置
US11057617B2 (en) * 2018-08-03 2021-07-06 Tencent America LLC Method and apparatus for video coding
US10958932B2 (en) * 2018-09-12 2021-03-23 Qualcomm Incorporated Inter-prediction coding of video data using generated motion vector predictor list including non-adjacent blocks
CN110933427B (zh) 2018-09-19 2023-05-12 北京字节跳动网络技术有限公司 仿射模式编码的模式相关自适应运动矢量分辨率
US10848782B2 (en) 2018-09-21 2020-11-24 Tencent America LLC Method and apparatus for video coding
WO2020060351A1 (ko) * 2018-09-21 2020-03-26 엘지전자 주식회사 움직임 벡터를 도출하는 방법 및 그 장치
WO2020060354A1 (ko) * 2018-09-21 2020-03-26 엘지전자 주식회사 압축된 움직임 벡터를 제어하는 방법 및 그 장치
US11317099B2 (en) 2018-10-05 2022-04-26 Tencent America LLC Method and apparatus for signaling an offset in video coding for intra block copy and/or inter prediction
US10764601B2 (en) 2018-10-06 2020-09-01 Tencent America LLC Method and apparatus for video coding
US11284066B2 (en) 2018-10-10 2022-03-22 Tencent America LLC Method and apparatus for intra block copy in intra-inter blending mode and triangle prediction unit mode
US11140404B2 (en) 2018-10-11 2021-10-05 Tencent America LLC Method and apparatus for video coding
US11509919B2 (en) 2018-10-17 2022-11-22 Tencent America Reference sample memory size restrictions for intra block copy
CN111083485A (zh) * 2018-10-22 2020-04-28 北京字节跳动网络技术有限公司 仿射模式的运动信息的利用
US11758164B2 (en) 2018-10-23 2023-09-12 Tencent America LLC Method and apparatus for video coding
CN111093073B (zh) 2018-10-24 2024-04-19 北京字节跳动网络技术有限公司 用于子块运动矢量预测的基于搜索的运动候选推导
WO2020103943A1 (en) 2018-11-22 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Using collocated blocks in sub-block temporal motion vector prediction mode
CN113574867B (zh) * 2019-01-12 2022-09-13 北京字节跳动网络技术有限公司 Mv精度约束
EP3895429A4 (en) 2019-01-31 2022-08-10 Beijing Bytedance Network Technology Co., Ltd. CONTEXT FOR CODE AN ADAPTIVE MOTION VECTOR RESOLUTION IN AFFINE MODE
WO2020192726A1 (en) 2019-03-27 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. History-based motion vector prediction
US11394990B2 (en) 2019-05-09 2022-07-19 Tencent America LLC Method and apparatus for signaling predictor candidate list size
WO2020233659A1 (en) 2019-05-21 2020-11-26 Beijing Bytedance Network Technology Co., Ltd. Adaptive motion vector difference resolution for affine mode
US11212545B2 (en) 2019-06-07 2021-12-28 Tencent America LLC Method and apparatus for improved implicit transform selection
WO2020252745A1 (en) * 2019-06-20 2020-12-24 Alibaba Group Holding Limited Loop filter design for adaptive resolution video coding
JP7297908B2 (ja) 2019-07-11 2023-06-26 テンセント・アメリカ・エルエルシー ビデオコーディング方法、装置及びコンピュータプログラム
US11616962B2 (en) 2019-07-15 2023-03-28 Tencent America LLC Method and apparatus for video coding
US11375243B2 (en) 2019-07-17 2022-06-28 Tencent America LLC Method and apparatus for video coding
WO2021027862A1 (en) 2019-08-13 2021-02-18 Beijing Bytedance Network Technology Co., Ltd. Motion precision in sub-block based inter prediction
CN114208184A (zh) * 2019-08-13 2022-03-18 北京字节跳动网络技术有限公司 基于子块的帧间预测中的运动精度
CN114762330A (zh) 2019-09-22 2022-07-15 北京字节跳动网络技术有限公司 视频的子图片编码和解码
CN110572673B (zh) * 2019-09-27 2024-04-09 腾讯科技(深圳)有限公司 视频编解码方法和装置、存储介质及电子装置
US11310511B2 (en) 2019-10-09 2022-04-19 Tencent America LLC Method and apparatus for video coding
JP7482220B2 (ja) 2019-10-18 2024-05-13 北京字節跳動網絡技術有限公司 サブピクチャのパラメータセットシグナリングにおける構文制約
CN114902666A (zh) * 2019-10-28 2022-08-12 Lg电子株式会社 使用自适应颜色变换的图像编码/解码方法和装置以及发送比特流的方法
KR20220100599A (ko) * 2019-11-26 2022-07-15 주식회사 윌러스표준기술연구소 적응적 컬러 공간 변환을 이용하는 비디오 신호 처리 방법 및 장치
US11516514B2 (en) * 2020-03-27 2022-11-29 Tencent America LLC High level control for deblocking operations
CN115398888A (zh) 2020-03-30 2022-11-25 字节跳动有限公司 对视频编解码中并置图片的约束

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110274161A1 (en) * 2010-05-06 2011-11-10 Samsung Electronics Co., Ltd. Image processing method and apparatus
WO2013155267A2 (en) * 2012-04-11 2013-10-17 Qualcomm Incorporated Motion vector rounding

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020196853A1 (en) 1997-06-04 2002-12-26 Jie Liang Reduced resolution video decompression
US7295609B2 (en) * 2001-11-30 2007-11-13 Sony Corporation Method and apparatus for coding image information, method and apparatus for decoding image information, method and apparatus for coding and decoding image information, and system of coding and transmitting image information
US20050259730A1 (en) * 2004-05-18 2005-11-24 Sharp Laboratories Of America, Inc. Video coding with residual color conversion using reversible YCoCg
US8374238B2 (en) * 2004-07-13 2013-02-12 Microsoft Corporation Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video
KR100763178B1 (ko) * 2005-03-04 2007-10-04 삼성전자주식회사 색 공간 스케일러블 비디오 코딩 및 디코딩 방법, 이를위한 장치
JP4470898B2 (ja) 2006-03-16 2010-06-02 ソニー株式会社 画像処理装置および方法、並びに、プログラム
JP5039142B2 (ja) * 2006-10-25 2012-10-03 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 品質スケーラブルな符号化方法
KR101369746B1 (ko) * 2007-01-22 2014-03-07 삼성전자주식회사 적응적 보간 필터를 이용한 영상 부호화, 복호화 방법 및장치
US8599921B2 (en) 2009-03-27 2013-12-03 Vixs Systems, Inc Adaptive partition subset selection module and method for use therewith
CN101820547A (zh) * 2009-02-27 2010-09-01 源见科技(苏州)有限公司 帧间模式选择方法
JP5184447B2 (ja) 2009-06-22 2013-04-17 株式会社Kddi研究所 動画像符号化装置および復号装置
US9237355B2 (en) 2010-02-19 2016-01-12 Qualcomm Incorporated Adaptive motion resolution for video coding
US10327008B2 (en) * 2010-10-13 2019-06-18 Qualcomm Incorporated Adaptive motion vector resolution signaling for video coding
KR20120088488A (ko) * 2011-01-31 2012-08-08 한국전자통신연구원 시간적 움직임 벡터 저장 방법 및 그 장치
US9485517B2 (en) * 2011-04-20 2016-11-01 Qualcomm Incorporated Motion vector prediction with motion vectors from multiple views in multi-view video coding
US9167269B2 (en) 2011-10-25 2015-10-20 Qualcomm Incorporated Determining boundary strength values for deblocking filtering for video coding
US9503702B2 (en) * 2012-04-13 2016-11-22 Qualcomm Incorporated View synthesis mode for three-dimensional video coding
CN102647594B (zh) 2012-04-18 2014-08-20 北京大学 一种整像素精度运动估计方法及其系统
US9414054B2 (en) * 2012-07-02 2016-08-09 Microsoft Technology Licensing, Llc Control and use of chroma quantization parameter values
TWI610574B (zh) * 2012-09-29 2018-01-01 微軟技術授權有限責任公司 於解塊中色度量化參數偏移之使用
CN103188496B (zh) 2013-03-26 2016-03-09 北京工业大学 基于运动矢量分布预测的快速运动估计视频编码方法
KR20150009467A (ko) * 2013-07-15 2015-01-26 주식회사 케이티 스케일러블 비디오 신호 인코딩/디코딩 방법 및 장치
US9667996B2 (en) * 2013-09-26 2017-05-30 Qualcomm Incorporated Sub-prediction unit (PU) based temporal motion vector prediction in HEVC and sub-PU design in 3D-HEVC
US9762927B2 (en) * 2013-09-26 2017-09-12 Qualcomm Incorporated Sub-prediction unit (PU) based temporal motion vector prediction in HEVC and sub-PU design in 3D-HEVC
US9774881B2 (en) 2014-01-08 2017-09-26 Microsoft Technology Licensing, Llc Representing motion vectors in an encoded bitstream
US10531116B2 (en) * 2014-01-09 2020-01-07 Qualcomm Incorporated Adaptive motion vector resolution signaling for video coding
US10432928B2 (en) * 2014-03-21 2019-10-01 Qualcomm Incorporated Using a current picture as a reference for video coding
US10412387B2 (en) * 2014-08-22 2019-09-10 Qualcomm Incorporated Unified intra-block copy and inter-prediction
CN107005708A (zh) * 2014-09-26 2017-08-01 Vid拓展公司 使用时间块向量预测的块内复制译码
US10455231B2 (en) * 2014-09-30 2019-10-22 Hfi Innovation Inc. Method of adaptive motion vector resolution for video coding
CA3074097C (en) * 2014-11-20 2021-10-26 Hfi Innovation Inc. Method of motion vector and block vector resolution control
US20160337662A1 (en) * 2015-05-11 2016-11-17 Qualcomm Incorporated Storage and signaling resolutions of motion vectors

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110274161A1 (en) * 2010-05-06 2011-11-10 Samsung Electronics Co., Ltd. Image processing method and apparatus
WO2013155267A2 (en) * 2012-04-11 2013-10-17 Qualcomm Incorporated Motion vector rounding

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019168347A1 (ko) * 2018-02-28 2019-09-06 삼성전자 주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
US11006144B2 (en) 2018-02-28 2021-05-11 Samsung Electronics Co., Ltd. Video decoding method and apparatus and video encoding method and apparatus
US11388435B2 (en) 2018-02-28 2022-07-12 Samsung Electronics Co., Ltd. Video decoding method and apparatus and video encoding method and apparatus
US11394998B2 (en) 2018-02-28 2022-07-19 Samsung Electronics Co., Ltd. Video decoding method and apparatus and video encoding method and apparatus
US11412251B2 (en) 2018-02-28 2022-08-09 Samsung Electronics Co., Ltd. Video decoding method and apparatus and video encoding method and apparatus
US11451822B2 (en) 2018-02-28 2022-09-20 Samsung Electronics Co., Ltd. Video decoding method and apparatus and video encoding method and apparatus
WO2020071672A1 (ko) * 2018-10-02 2020-04-09 엘지전자 주식회사 움직임 벡터를 압축하는 방법 및 그 장치
US11758178B2 (en) 2018-10-02 2023-09-12 Lg Electronics Inc. Method for compressing motion vector and apparatus therefor

Also Published As

Publication number Publication date
CA2961681A1 (en) 2016-04-07
EP3189660A1 (en) 2017-07-12
WO2016050219A1 (en) 2016-04-07
EP3189660B1 (en) 2023-07-12
CN114554199B (zh) 2023-11-10
CN107079164A (zh) 2017-08-18
CN111818334B (zh) 2022-04-01
US20200007863A1 (en) 2020-01-02
CN114554199A (zh) 2022-05-27
EP3189660A4 (en) 2018-03-21
KR20200008063A (ko) 2020-01-22
CN107079164B (zh) 2020-07-10
US10880547B2 (en) 2020-12-29
US20170295370A1 (en) 2017-10-12
US10455231B2 (en) 2019-10-22
KR102115715B1 (ko) 2020-05-27
CA2961681C (en) 2022-08-09
CN111818334A (zh) 2020-10-23
KR102068828B1 (ko) 2020-01-22

Similar Documents

Publication Publication Date Title
US10880547B2 (en) Method of adaptive motion vector resolution for video coding
CA2964324C (en) Method of guided cross-component prediction for video coding
US11284084B1 (en) Constraints on model-based reshaping in video processing
JP2022552537A (ja) サブピクチャのパラメータセットシグナリングにおける構文制約
CN114641992B (zh) 参考图片重采样的信令
JP7436680B2 (ja) 映像コーディングのための一般制約情報
US20230087875A1 (en) Methods and Apparatuses of Loop Filter Parameter Signaling in Image or Video Processing System
US20240089501A1 (en) Joint use of adaptive colour transform and differential coding of video
KR20220156029A (ko) 구문 요소를 사용한 비디오 프로세싱
WO2021219143A1 (en) Entropy coding for motion precision syntax
CN115176470A (zh) 图像/视频编解码中的自适应颜色变换
CN114982237A (zh) 视频编解码中量化参数的信令通知
EP4144088A1 (en) Methods and devices for prediction dependent residual scaling for video coding
CN114946180A (zh) 使用量化参数信息的去方块滤波
CN114946187A (zh) 色度残差的联合编解码和自适应颜色变换

Legal Events

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