KR20140068250A - 비균일 움직임 벡터 그리드에 대한 움직임 벡터 스케일링 - Google Patents
비균일 움직임 벡터 그리드에 대한 움직임 벡터 스케일링 Download PDFInfo
- Publication number
- KR20140068250A KR20140068250A KR20147011612A KR20147011612A KR20140068250A KR 20140068250 A KR20140068250 A KR 20140068250A KR 20147011612 A KR20147011612 A KR 20147011612A KR 20147011612 A KR20147011612 A KR 20147011612A KR 20140068250 A KR20140068250 A KR 20140068250A
- Authority
- KR
- South Korea
- Prior art keywords
- motion vector
- grid
- block
- uniform
- vector grid
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/527—Global motion vector estimation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
일 실시예에서, 한 방법은 제1 블록에 대한 스케일링된 움직임 벡터를 결정한다. 제2 블록에 대한 움직임 벡터가 결정되며, 움직임 벡터는 비균일 움직임 벡터 그리드에 있다. 그 후, 본 방법은 제2 블록에 대한 움직임 벡터를 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하고, 더 높은 정확성의 움직임 벡터 그리드에서 제2 블록에 대한 움직임 벡터를 스케일링한다. 스케일링된 움직임 벡터는 더 높은 정확성의 움직임 벡터 그리드에서 비균일 움직임 벡터 그리드에 매핑된다. 비균일 움직임 벡터 그리드에서 스케일링된 움직임 벡터는 시간적 예측 프로세스 동안 제1 블록과 연관된다.
Description
<관련 출원 상호 참조>
본 출원은, 그 내용 전체가 참조용으로 본 명세서에 인용된, 2011년 11월 4일에 출원된 "비균일 움직임 벡터 그리드에 대한 움직임 벡터 스케일링(Motion Vector Scaling for Non-Uniform Motion Vector Grid)"이라는 미국 임시 출원 번호 제61/556,147호에 대한 우선권을 주장한다.
고효율 비디오 코딩(HEVC)은 블록 기반 하이브리드 공간적 및 시간적 예측 코딩 방식이다. MPEG(motion picture expert group)-1, MPEG-2 및 MPEG-4 등의 다른 비디오 코딩 표준들과 유사하게, HEVC는 I 픽처 등의 인트라-픽처 및 B 픽처 등의 인터-픽처를 지원한다. HEVC에서, P 및 B 픽처들은 기준 픽처로서 사용될 수 있는 일반 B 픽처로 통합된다.
인트라-픽처는 임의의 다른 픽처들을 참고하지 않고 코딩된다. 따라서, 인트라-픽처 내의 코딩 유닛(CU)/예측 유닛(PU)에 대해 공간적 예측만이 허용된다. 그러나, 인터-픽처는 인트라-예측 및 인터-예측을 둘 다 지원한다. 인터-픽처의 CU/PU는 공간적으로 또는 시간적으로 예측 코딩될 수 있다. 시간적 예측 코딩은 이전에 코딩된 픽처들을 참고할 수 있다.
시간적 움직임 예측은 코딩 효율을 증가시키고 고압축을 제공하는 효과적인 방법이다. HEVC는 움직임 예측을 위한 병진 모델(translational model)을 사용한다. 병진 모델에 따라, 현재 픽처의 소정의 블록에 대한 예측 신호가 기준 픽처의 대응 블록으로부터 생성된다. 기준 블록의 좌표는 현재 블록의 좌표에 대해 추가되거나/빼지는 수평 (x) 및 수직 (y) 방향들을 따라 병진 모델을 기술하는 움직임 벡터에 의해 주어진다. 디코더는 압축된 비디오를 디코딩하기 위해 움직임 벡터를 필요로 한다.
기준 프레임의 픽셀들은 예측으로서 사용된다. 일례에서, 움직임은 정수 픽셀들로 캡처될 수 있다. 그러나, 모든 객체들이 정수 픽셀들(pel(펠, 화소)이라고도 함)의 간격에 따라 이동하지는 않는다. 예를 들어, 객체 움직임이 샘플링 그리드와 완전히 관련되지 않으므로, 때때로 객체 움직임은 풀-펠(full-pel) 움직임이라기보다는 서브-픽셀(분수(fractional)) 움직임에 더 가깝다. 따라서, HEVC는 서브-픽셀 정확성을 가진 움직임 벡터들을 허용한다.
서브-픽셀 변위를 추정 및 보상하기 위해, 서브-픽셀 위치들에 대한 이미지 신호가 보간 프로세스에 의해 생성된다. HEVC에서, 서브-픽셀 보간은 유한 임펄스 응답(FIR) 필터들을 사용해서 실행된다. 일반적으로, 필터는 1/2 펠(half-pel) 및 1/4 펠(quarter-pel) 위치들 등의 서브-픽셀 위치들에 대한 서브-픽셀 값들을 결정하기 위해 8개의 탭들을 가질 수 있다. 보간 필터의 탭들은 정수 픽셀들을 계수 값들로 가중해서 서브-픽셀 신호들을 생성한다. 상이한 계수들은 신호 왜곡 및 잡음의 상이한 압축 성능을 산출할 수 있다.
도 1은 일 실시예에 따라 이미지 내의 픽셀 라인을 따른 풀-펠 픽셀들 간의 1/2 펠 및 분수-펠(예를 들어, 1/4 펠) 픽셀들의 위치들을 도시한다. 예를 들어, 픽셀 라인은 이미지의 행 또는 열을 따를 수 있다. 다수의 보간 계산들이 이미지의 상이한 행들 및 열들을 따라 이루어질 수 있다. 풀-펠 픽셀들은 정수 픽셀들로 표현되며, 픽셀들 L3, L2, L1, L0, R0, R1, R2 및 R3로서 도 1에 도시되어 있다. H는 풀-펠 픽셀들 L0 및 R0 사이의 1/2 펠 픽셀이다. FL은 풀-펠 픽셀들 L0 및 H 사이의 서브-픽셀 픽셀(분수-펠 픽셀)이고, FR은 1/2 펠 픽셀 H 및 풀-펠 픽셀 R0 사이의 서브-픽셀 픽셀이다.
분수-펠 픽셀 및 1/2 펠 픽셀은 공간적 이웃 풀-펠 픽셀들의 값들을 사용해서 보간될 수 있다. 예를 들어, 1/2 펠 픽셀 H는 풀-펠 픽셀들 L3, L2, L1, L0, R0, R1, R2 및 R3의 값들을 사용해서 보간될 수 있다. 또한, 상이한 계수들이 이웃 픽셀들의 값들을 가중하고 필터링의 상이한 특성들을 제공하는데 사용될 수 있다.
균일한 서브-픽셀 간격이 사용될 수 있다. 예를 들어, 1/4, 1/2 및 3/4 픽셀(three quarter pixel) 오프셋들에 대응하는 서브-픽셀 위상 오프셋들이 허용된다. 도 2는 고정, 균일, 4 위치 서브-픽셀 움직임 벡터 그리드의 일례이고, 도 3은 고정, 균일, 8 위치 서브-픽셀 움직임 벡터 그리드의 일례이며, 도 4는 고정, 균일, 16 위치 서브-픽셀 움직임 벡터 그리드의 일례이다. 이러한 3개의 예들에서, L0 및 R0은 정수 픽셀들이고, L0 및 R0 사이의 픽셀들은 분수-픽셀들이다.
움직임 벡터(MV)는 디코딩된 픽처의 좌표로부터 기준 픽처의 좌표로의 오프셋을 제공하는 인터 예측에 사용되는 2차원 벡터(MVX, MVY)이다. 움직임 벡터는 정수들로 표현될 수 있지만, 정확성은 1/4 펠 해상도일 수 있다. 즉, 움직임 벡터의 한 성분(MVX 또는 MVY)이 4로 나누어질 때 "0"인 나머지를 가지면, 정수-펠 움직임 벡터 성분이고; 움직임 벡터의 한 성분이 4로 나누어질 때 "1"인 나머지를 가지면, 1/4 펠 움직임 벡터 성분이며; 움직임 벡터의 한 성분이 4로 나누어질 때 "2"인 나머지를 가지면, 1/2 펠 움직임 벡터 성분이고; 움직임 벡터의 한 성분이 4로 나누어질 때 "3"인 나머지를 가지면, 3/4 펠 움직임 벡터 성분이다.
움직임 벡터들은 공간적 이웃 블록들 및/또는 시간적 동위치 블록들(temporal collocated blocks)의 움직임 벡터들로부터 선택된 예측자들(predictors)로 예측 코딩된다. 이러한 공간적 이웃 블록들 및 시간적 동위치 블록들의 움직임 벡터들은 현재 블록의 기준 픽처로부터 상이한 시간적 거리를 가지는 상이한 기준 픽처들을 가리킬 수 있다. 공간적 이웃 블록들 및 시간적 동위치 블록들의 움직임 벡터들이 현재 블록의 기준 픽처를 가리키게 하기 위해, 움직임 벡터 스케일링이 현재 블록의 기준 픽처를 가리키도록 움직임 벡터를 스케일링하는데 사용된다. 스케일링은 시간적 거리의 차이들을 사용한다.
균일 움직임 벡터 그리드에서, 움직임 벡터의 스케일링은 대응 움직임 오프셋의 스케일링에 매우 가까울 수 있다. 예를 들어, 움직임 벡터 스케일링은 현재 픽처 및 기준 픽처들 간의 시간적 거리에 따라 실행된다. 현재 픽처의 현재 블록이 주어지면, 움직임 벡터 스케일링은 이론적으로 다음과 같이 실행될 수 있다:
여기서, MVP는 현재 블록에 대한 움직임 벡터 예측자이고, TDref는 현재 픽처 및 현재 블록에 대한 기준 픽처 간의 시간적 거리이며, TDP는 움직임 벡터 예측자 MVP가 존재하는 픽처 및 MVP가 가리키는 기준 픽처 간의 시간적 거리이다.
움직임 벡터들 MVP 및 MVPscaled에 대해 무한 정밀도가 허용되면, 상기 수학식은 정확하다. 그러나, 정밀도가 겨우 1/4 펠이면, 양호한 근사치가 필요하다. 예를 들어, 일례에서, 움직임 벡터 성분이 4 위치 서브-픽셀 움직임 벡터 그리드에서 값 1을 가지고, 시간적 거리들 TDref 및 TDP가 각각 4 및 1이라고 가정하자. 스케일링 수학식 1을 사용해서, 값 1의 움직임 벡터 스케일링은 다음과 같이 스케일링된다:
MVPscaled = (TDref×MVP)/TDP = (4×1)/1 = 4
4 위치 서브-픽셀 움직임 벡터 그리드에서, 값 4의 움직임 벡터 성분은 1 펠의 움직임 오프셋을 의미한다. 균일 4 위치 서브-픽셀 움직임 벡터 그리드(도 2)에서, 값 1의 움직임 벡터 성분은 1/4 펠의 움직임 오프셋 성분을 나타낸다. 동일한 스케일링 수학식을 사용해서, 1/4 펠의 움직임 오프셋 성분은 다음과 같이 스케일링된다:
MVPscaled = (TDref×MVP)/TDP = (4×(1/4))/1 = 1 (펠)
알 수 있는 바와 같이, 본 일례의 경우, 움직임 벡터 성분의 스케일링은 움직임 오프셋의 스케일링과 정확하게 일치하는데, 이는 양자가 1 펠의 움직임 오프셋을 제공하기 때문이다. 그러나, 서브-샘플 위치들의 균일한 분포에 따른 문제점은, 탭들의 수 또는 기준 블록의 파워 스펙트럼 밀도 등의 소정의 집합의 필터 제한들에 대해 최적이 아닐 수 있다는 것이다.
일 실시예에서, 한 방법은 제1 블록에 대한 스케일링된 움직임 벡터를 결정한다. 제2 블록에 대한 움직임 벡터가 결정되며, 움직임 벡터는 비균일 움직임 벡터 그리드에 있다. 그 후, 본 방법은 제2 블록에 대한 움직임 벡터를 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하고, 더 높은 정확성의 움직임 벡터 그리드에서 제2 블록에 대한 움직임 벡터를 스케일링한다. 스케일링된 움직임 벡터는 더 높은 정확성의 움직임 벡터 그리드에서 비균일 움직임 벡터 그리드에 매핑된다. 비균일 움직임 벡터 그리드에서 스케일링된 움직임 벡터는 시간적 예측 프로세스 동안 제1 블록과 연관된다.
일 실시예에서, 제1 블록에 대한 스케일링된 움직임 벡터를 결정하기 위한 방법이 제공되는데, 본 방법은 인코더로부터의 비트스트림을 디코더에서 수신하는 단계; 비트스트림의 정보를 사용해서 제2 블록에 대한 움직임 벡터를 결정하는 단계 - 움직임 벡터는 비균일 움직임 벡터 그리드에 있음 - ; 디코더에 의해, 제2 블록에 대한 움직임 벡터를 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하는 단계; 디코더에 의해, 더 높은 정확성의 움직임 벡터 그리드에서 제2 블록에 대한 움직임 벡터를 스케일링하는 단계; 및 디코더에 의해, 더 높은 정확성의 움직임 벡터 그리드에서 스케일링된 움직임 벡터를 비균일 움직임 벡터 그리드에 매핑하는 단계 - 비균일 움직임 벡터 그리드에서 스케일링된 움직임 벡터는 비트스트림을 디코딩하기 위해 시간적 예측 프로세스 동안 제1 블록과 연관됨 - 를 포함한다.
일 실시예에서, 제1 블록에 대한 스케일링된 움직임 벡터를 결정하도록 구성된 장치가 제공되는데, 본 장치는 하나의 또는 그 이상의 컴퓨터 프로세서들; 및 명령들을 포함하는 비일시 컴퓨터 판독 가능 기억 매체를 포함하고, 명령들은, 실행될 때, 제2 블록에 대한 움직임 벡터를 결정하고 - 움직임 벡터는 비균일 움직임 벡터 그리드에 있음 - ; 제2 블록에 대한 움직임 벡터를 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하며; 더 높은 정확성의 움직임 벡터 그리드에서 제2 블록에 대한 움직임 벡터를 스케일링하고; 더 높은 정확성의 움직임 벡터 그리드에서 스케일링된 움직임 벡터를 비균일 움직임 벡터 그리드에 매핑하도록 - 비균일 움직임 벡터 그리드에서 스케일링된 움직임 벡터는 시간적 예측 프로세스 동안 제1 블록과 연관됨 - 구성되게 하나의 또는 그 이상의 컴퓨터 프로세서들을 제어한다.
일 실시예에서, 제1 블록에 대한 스케일링된 움직임 벡터를 결정하도록 구성된 장치가 제공되는데, 본 장치는 하나의 또는 그 이상의 컴퓨터 프로세서들; 및 명령들을 포함하는 비일시 컴퓨터 판독 가능 기억 매체를 포함하고, 명령들은, 실행될 때, 인코더로부터의 비트스트림을 디코더에서 수신하고; 비트스트림의 정보를 사용해서 제2 블록에 대한 움직임 벡터를 결정하며 - 움직임 벡터는 비균일 움직임 벡터 그리드에 있음 - ; 제2 블록에 대한 움직임 벡터를 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하고; 더 높은 정확성의 움직임 벡터 그리드에서 제2 블록에 대한 움직임 벡터를 스케일링하며; 더 높은 정확성의 움직임 벡터 그리드에서 스케일링된 움직임 벡터를 비균일 움직임 벡터 그리드에 매핑하도록 - 비균일 움직임 벡터 그리드에서 스케일링된 움직임 벡터는 비트스트림을 디코딩하기 위해 시간적 예측 프로세스 동안 제1 블록과 연관됨 - 구성되게 하나의 또는 그 이상의 컴퓨터 프로세서들을 제어한다.
이하의 상세한 설명 및 첨부 도면들은 특정 실시예들의 본질 및 장점들의 더 나은 이해를 제공한다.
도 1은 일 실시예에 따라 이미지 내의 픽셀 라인을 따른 풀-펠 픽셀들 간의 1/2 펠 및 1/4 펠 픽셀들의 위치들을 도시한다.
도 2는 고정, 균일, 4 위치 서브-픽셀 움직임 벡터 그리드의 일례이다.
도 3은 고정, 균일, 8 위치 서브-픽셀 움직임 벡터 그리드의 일례이다.
도 4는 고정, 균일, 16 위치 서브-픽셀 움직임 벡터 그리드의 일례이다.
도 5는 일 실시예에 따라 비균일 움직임 벡터 그리드에서 움직임 벡터들을 스케일링하기 위한 간소화된 시스템을 도시한다.
도 6은 1/8 픽셀 위상 오프셋, 1/2 픽셀 위상 오프셋 및 7/8 픽셀 위상 오프셋을 가진 고정, 비균일, 4 위치 서브-픽셀 움직임 벡터 그리드를 포함한다.
도 7은 3/16 픽셀 위상 오프셋, 1/2 픽셀 위상 오프셋 및 13/16 픽셀 위상 오프셋을 가진 고정, 비균일, 4 위치 서브-픽셀 움직임 벡터 그리드를 도시한다.
도 8a는 공간적 이웃 블록에 대한 움직임 벡터 스케일링을 도시한다.
도 8b는 일 실시예에 따른 시간적 동위치 블록(a temporal co-located block)에 대한 움직임 벡터 스케일링을 도시한다.
도 9는 일 실시예에 따라 비균일 움직임 벡터 그리드에 대한 스케일링을 실행하는 방법의 간소화된 흐름도를 도시한다.
도 10은 일 실시예에 따른 비균일 움직임 벡터 그리드에서의 맵-업 프로세스(map-up process)의 일례를 도시한다.
도 11은 일 실시예에 따른 맵 다운 프로세스(map down process)의 일례를 도시한다.
도 12a는 일 실시예에 따른 인코더의 일례를 도시한다.
도 12b는 일 실시예에 따른 디코더의 일례를 도시한다.
도 2는 고정, 균일, 4 위치 서브-픽셀 움직임 벡터 그리드의 일례이다.
도 3은 고정, 균일, 8 위치 서브-픽셀 움직임 벡터 그리드의 일례이다.
도 4는 고정, 균일, 16 위치 서브-픽셀 움직임 벡터 그리드의 일례이다.
도 5는 일 실시예에 따라 비균일 움직임 벡터 그리드에서 움직임 벡터들을 스케일링하기 위한 간소화된 시스템을 도시한다.
도 6은 1/8 픽셀 위상 오프셋, 1/2 픽셀 위상 오프셋 및 7/8 픽셀 위상 오프셋을 가진 고정, 비균일, 4 위치 서브-픽셀 움직임 벡터 그리드를 포함한다.
도 7은 3/16 픽셀 위상 오프셋, 1/2 픽셀 위상 오프셋 및 13/16 픽셀 위상 오프셋을 가진 고정, 비균일, 4 위치 서브-픽셀 움직임 벡터 그리드를 도시한다.
도 8a는 공간적 이웃 블록에 대한 움직임 벡터 스케일링을 도시한다.
도 8b는 일 실시예에 따른 시간적 동위치 블록(a temporal co-located block)에 대한 움직임 벡터 스케일링을 도시한다.
도 9는 일 실시예에 따라 비균일 움직임 벡터 그리드에 대한 스케일링을 실행하는 방법의 간소화된 흐름도를 도시한다.
도 10은 일 실시예에 따른 비균일 움직임 벡터 그리드에서의 맵-업 프로세스(map-up process)의 일례를 도시한다.
도 11은 일 실시예에 따른 맵 다운 프로세스(map down process)의 일례를 도시한다.
도 12a는 일 실시예에 따른 인코더의 일례를 도시한다.
도 12b는 일 실시예에 따른 디코더의 일례를 도시한다.
비디오 압축 시스템을 위한 기술들이 본 명세서에 기술된다. 이하의 설명에서, 설명을 위해, 다수의 일례들 및 특정 세부 사항들이 특정 실시예들의 철저한 이해를 제공하기 위해 기재된다. 청구항들에 의해 정의된 특정 실시예들은 그 특징들의 일부 또는 전부를 이 예들에서 단독으로 또는 후술되는 다른 특징들과 조합해서 포함할 수 있으며, 본 명세서에 기술된 특징들 및 개념들의 변경들 및 동등물들을 더 포함할 수 있다.
도 5는 일 실시예에 따라 비균일 움직임 벡터 그리드에서 움직임 벡터들을 스케일링하기 위한 간소화된 시스템(500)을 도시한다. 시스템(500)은 비디오 콘텐츠를 인코딩 및 디코딩하기 위한 인코더(502) 및 디코더(504)를 포함한다. 인코더(502) 및 디코더(504)는 움직임 추정 및 움직임 보상을 통해 시간적 예측을 실행한다. 움직임 추정은 비디오의 현재 블록(예를 들어, 한 유닛)에 대한 움직임 벡터(MV)를 결정하는 프로세스이다. 움직임 보상은 움직임 벡터를 현재 블록에 적용하는 것이다. 예를 들어, 시간적 예측은 기준 픽처들에 대해 현재 예측 유닛(PU)의 최상 일치 예측을 탐색한다. 최상 일치 예측은 움직임 벡터 및 연관된 기준 픽처 ID로 기술된다. 또한, B 픽처의 PU는 최대 2개의 움직임 벡터들을 가질 수 있다.
시간적 예측은 분수 (서브-픽셀) 픽처 정확성을 허용한다. 2가지 경우의 시간 중의(현재 프레임 및 기준 프레임의 캡처 시간들 중의) 움직임이 픽셀 좌표의 서브-픽셀 위치에 대응할 수 있고, 각각의 서브-픽셀 위치에 대응하는 상이한 예측 데이터의 생성이 현재 PU의 신호에 더 잘 일치하도록 예측 신호를 조절하는 가능성을 허용하기 때문에, 서브-픽셀 예측이 사용된다.
시간적 예측 프로세스에서, 인코더(502) 또는 디코더(504)의 움직임 벡터 스케일링 관리자(506)는 비균일 움직임 벡터 그리드에 대한 움직임 벡터 스케일링 프로세스를 사용한다. 비균일 움직임 벡터 그리드는 정수 픽셀들 간의 비균일 서브-픽셀 위상 오프셋들을 허용한다. 예를 들어, 서브-픽셀 위상 오프셋들은 간격이 균일하지 않을 수 있고/있거나 상이한 수의 위상 오프셋들을 포함할 수 있다. 위상 오프셋은 풀-펠 위치로부터의 서브-픽셀 위치의 오프셋이다. 예를 들어, 비균일 위상 오프셋들은 임의의 필터링 없이 샘플들을 사용할 수 있는 0 위상 필터 외에 1/8 픽셀 위상 오프셋, 1/2 픽셀 위상 오프셋 및 7/8 픽셀 위상 오프셋의 위상 오프셋들을 포함할 수 있다. 다른 비균일 위상 오프셋들도 또한 이해될 수 있다. 종래에는, 1/4, 1/2 및 3/4 픽셀 오프셋들에 대응하는 위상 오프셋들 등의 오프셋들의 고정된 해상도가 사용되었다. 예를 들어, 균일한 위상 오프셋들은 1/4, 1/2 및 3/4 오프셋들일 수 있으며, 여기서, 균일한 간격은 1/4 펠이다. 그러나, 서브-픽셀 위치들의 균일한 분포에 따른 문제점은, 이러한 균일한 서브-픽셀 위치들이 최적이 아닐 수 있다는 것이다.
일 실시예에서, 서브-픽셀 위치들에 대한 위상 오프셋들은 인코딩 또는 디코딩 프로세스의 특성들에 기초하여 결정될 수 있다. 예를 들어, 특성은 인코딩 또는 디코딩중인 방송 비디오 등의 비디오 콘텐츠로부터의 통계 정보일 수 있다. 또한, 특성은 보간 필터의 속성들, 예측 타입(예를 들어, 하나의 기준 블록으로부터 또는 다수의 기준 블록들로부터) 및/또는 압축 잡음 통계 특성 등의 코딩 조건일 수 있다. 또한, 최적 서브-픽셀 위치들은 수직 차원 및/또는 수평 차원의 상이한 위상 오프셋들을 요구할 수 있다. 따라서, 상이한 위상 오프셋들이 인코딩 또는 디코딩 프로세스의 상이한 특성들에 기초하여 선택될 수 있다.
일 실시예에 따라, 도 6은 비균일 위상 오프셋들의 제1 일례를 도시하고, 도 7은 비균일 위상 오프셋들의 제2 일례를 도시한다. 도 6은 1/8 픽셀 위상 오프셋, 1/2 픽셀 위상 오프셋 및 7/8 픽셀 위상 오프셋을 가진 고정, 비균일, 4 위치 서브-픽셀 움직임 벡터 그리드를 포함한다. 도 7은 3/16 픽셀 위상 오프셋, 1/2 픽셀 위상 오프셋 및 13/16 픽셀 위상 오프셋을 가진 고정, 비균일, 4 위치 서브-픽셀 움직임 벡터 그리드를 도시한다. 양 일례들에서, L0 및 R0은 정수 픽셀들이고, L0 및 R0 사이의 픽셀들은 분수-픽셀들이다. 도 6에 도시된 바와 같이, 서브-픽셀들 간의 간격은 균일하지 않다. 예를 들어, 픽셀 L0 및 1/8 픽셀 위상 오프셋 간의 간격은 1/8 픽셀 위상 오프셋 및 1/2 픽셀 위상 오프셋 간의 간격과 상이하다. 다른 비균일 간격이 1/2 픽셀 위상 오프셋 및 7/8 픽셀 위상 오프셋 사이와, 7/8 픽셀 위상 오프셋 및 R0 픽셀 사이에 존재한다. 도 7에 도시된 제2 일례에서도 마찬가지이다. 이는 배경 기술의 도 2 내지 도 4에 도시된 픽셀 위상 오프셋들과 대조된다. 이러한 픽셀 위상 오프셋들은 서로 균일하게 간격을 둔다.
상술된 바와 같이, 움직임 벡터들은 공간적 이웃 블록들 및/또는 시간적 동위치 블록들의 움직임 벡터들로부터 선택된 예측자들로 예측 코딩된다. 움직임 벡터 스케일링이 공간적 이웃 블록 및/또는 시간적 동위치 블록에 대한 움직임 벡터를 현재 블록에 대한 스케일링된 움직임 벡터로 스케일링하는데 사용된다. 그러나, 비균일 위상 오프셋들이 사용될 때, 균일한 위상 오프셋들에 적용된 스케일링은 현재 블록에 대한 대응 움직임 오프셋의 스케일링에 대해 정확하지 않을 수 있다.
일 실시예에 따라, 도 8a는 공간적 이웃 블록에 대한 움직임 벡터 스케일링을 도시하고, 도 8b는 시간적 동위치 블록에 대한 움직임 벡터 스케일링을 도시한다. 도 8a에서, 802에서, 현재 픽처가 코딩되고 있다. 804에서, 코딩되고 있는 현재 블록이 도시된다. 이 경우에, 806에서, 공간적 이웃 블록에 대한 움직임 벡터 예측자 MVP가 도시된다. 움직임 벡터 예측자 MVP는 808에서 기준 픽처를 가리킨다. 또한, 810에서, 현재 블록에 대한 기준 픽처가 도시된다.
808의 기준 픽처 및 810의 기준 픽처 간의 시간적 거리 차이가 존재한다. 예를 들어, 현재 픽처 및 808의 기준 픽처 간의 시간적 거리는 거리 TDP이고, 810의 기준 픽처 및 현재 픽처 간의 시간적 거리는 거리 TDref이다. 그 후, 시간적 거리들을 사용해서 현재 블록에 대해 스케일링된 움직임 벡터 MVPscaled가 계산된다. 시간적 거리가 기술되더라도, 픽처 순서 등의 다른 측정치들이 스케일링에 사용될 수 있다.
도 8b에서, 스케일링은 850에 도시된 동위치 블록에 대해 실행될 수 있다. 이 경우에, 시간적 거리 TDP는 동위치 블록을 포함하는 현재 픽처 및 동위치 블록의 움직임 벡터 예측자 MVP가 가리키는 852에 도시된 기준 픽처 간의 거리이다. 또한, 시간적 거리 TDref는 현재 블록을 포함하는 현재 픽처 및 854에 도시된 기준 픽처 간의 차이이다. 시간적 거리들 TDP 및 TDref는 현재 블록에 대한 스케일링된 움직임 벡터 예측자 MVPscaled를 결정하기 위해 움직임 벡터 예측자 MVP를 스케일링하는데 사용된다.
도 6 또는 도 7에서 도시된 비균일 4 위치 서브-픽셀 움직임 벡터 그리드에서 배경 기술에서 상술된 바와 같이 스케일링을 실행할 때, 값 "1"의 움직임 벡터 성분은 3/16 픽셀 위상 오프셋의 움직임 오프셋 성분을 나타낸다. 스케일링 수학식 1을 사용해서, 3/16 픽셀 위상 오프셋의 움직임 오프셋 성분은 다음과 같이 스케일링된다:
MVPscaled = (TDref×MVP)/TDP = (4×(3/16))/1 = 12/16 (펠)
값 "1"의 움직임 벡터 성분의 스케일링은 1 펠의 움직임 오프셋을 제공하지만, 움직임 오프셋 성분의 스케일링은 12/16 펠의 움직임 오프셋을 제공한다. 12/16 펠 값은 1 펠의 값과 상이하다. 이는 정확한 스케일링이 아닐 수 있다.
따라서, 인코더(502) 또는 디코더(504)의 움직임 벡터 스케일링 관리자(506)는 배경 기술에서 상술된 균일 움직임 벡터 그리드에 대한 스케일링 프로세스와 상이한 비균일 움직임 벡터 그리드에 대한 움직임 벡터 스케일링 프로세스를 사용한다. 도 9는 일 실시예에 따라 비균일 움직임 벡터 그리드에 대한 스케일링을 실행하는 방법의 간소화된 흐름도(900)를 도시한다. 902에서, 움직임 벡터 스케일링 관리자(506)는 맵 업 프로세스를 실행한다. 맵 업 프로세스는 비균일 움직임 벡터 그리드의 움직임 벡터 MVXOri, MVYOri를 더 높은 정확성의 움직임 벡터 그리드로 매핑한다. 이는 더 높은 정확성의 움직임 벡터 그리드에서 매핑된 움직임 벡터 MVXHA, MVYHA를 야기한다. 도 10은 일 실시예에 따른 비균일 움직임 벡터 그리드에서의 맵-업 프로세스의 일례를 도시한다. 본 일례에서, 3/16 픽셀 위상 오프셋, 1/2 픽셀 위상 오프셋 및 13/16 픽셀 위상 오프셋을 가진 고정 비균일, 4 위치 서브-픽셀 움직임 벡터 그리드가 사용된다. 또한, 정수 픽셀들 L0 및 R0이 도시된다. 원래의 움직임 벡터 성분들 MVXOri, MVYOri는 4로 나누어질 때 0, 1, 2 및 3의 나머지들을 가진다. 이는 1002에 도시되며, 0, 1, 2 및 3의 나머지들은 L0 픽셀, 3/16 서브-픽셀 오프셋, 1/2 서브-픽셀 오프셋 및 13/16 서브-픽셀 오프셋에 대응한다.
더 높은 정확성의 움직임 벡터 그리드에서, 추가 픽셀 위치들은 점선들로 도시된다. 이는 3/16, 1/2 및 13/16 서브-픽셀 위치들 외에 픽셀들 L0 및 R0 사이에 더 많은 서브-픽셀 위치들이 포함될수록 정확성을 증가시킨다. 더 높은 정확성의 움직임 벡터 그리드에서, 더 높은 정확성의 움직임 벡터 성분들 MVXHA, MVYHA는 각각 16으로 나누어질 때 0, 3, 8 및 13의 나머지들을 가진다. 이는 1004에 도시되며, 나머지들 0, 3, 8 및 13은 L0 픽셀, 3/16 서브-픽셀 위치, 1/2 서브-픽셀 위치 및 13/16 서브-픽셀 위치에 대응한다. 또한, 비균일 움직임 벡터 그리드가 사용되지 않으면, 4로 나누어질 때 0, 1, 2 및 3의 나머지들을 가진 원래의 움직임 벡터 성분들은 각각 16으로 나누어질 때 0, 4, 8 및 12의 나머지들을 가진 더 높은 정확성의 움직임 벡터 성분들에 매핑된다. 따라서, 균일 움직임 벡터 그리드가 사용될 때의 맵 업 프로세스는 어떤 영향도 미치지 않는다.
다시 도 9를 참조하면, 904에서, 움직임 벡터 스케일링 관리자(506)는 더 높은 정확성의 움직임 벡터 그리드에서 매핑된 움직임 벡터 MVXHA, MVYHA를 스케일링된 움직임 벡터 MVXHAScaled, MVYHAScaled로 스케일링한다. 스케일링된 움직임 벡터 또한 더 높은 정확성의 움직임 벡터 그리드에 있다. 스케일링된 움직임 벡터 MVXHAScaled, MVYHAScaled는 움직임 벡터 MVXHA, MVYHA와 동일하게 더 많이 정확하며, 더 높은 정확성의 움직임 벡터 그리드에서 임의의 위치를 취할 수 있다. 스케일링은 수학식 1과 관련하여 상술된 바와 같이 실행될 수 있으며, 움직임 벡터 예측자의 기준 픽처 및 현재 블록의 기준 픽처의 시간적 거리 간의 시간적 거리들이 움직임 벡터 예측자를 스케일링하기 위해 고려된다.
906에서, 움직임 벡터 스케일링 관리자(506)는 맵 다운 프로세스를 실행한다. 맵 다운 프로세스에서, 움직임 벡터 스케일링 관리자(506)는 스케일링된 더 높은 정확성의 움직임 벡터 MVXHAScaled, MVYHAScaled를 다시 원래의 비균일 움직임 벡터 그리드로 맵 다운한다. 이는 원래의 비균일 움직임 벡터 그리드에서 최종 스케일링된 움직임 벡터 MVXScaled, MVYScaled를 제공한다. 도 11은 일 실시예에 따른 맵 다운 프로세스의 일례를 도시한다. 1102에서, 더 높은 정확성의 움직임 벡터 그리드에서 스케일링된 움직임 벡터들이 도시된다. 값들은 16으로 나누어질 때 0-15의 나머지로부터의 값들 중 임의의 값을 취할 수 있다. 1104에서, 이 값들은 4로 나누어질 때 0, 1, 2 또는 3의 나머지의 값들이 되도록 원래의 비균일 움직임 벡터 그리드로 맵-다운된다.
상이한 알고리즘들이 맵-다운 프로세스를 실행하는데 사용될 수 있다. 일례에서, 값들 간의 거리에 기초하여 더 높은 정확성의 움직임 벡터 그리드로부터의 값들의 서브세트들을 비균일 움직임 벡터 그리드에서 더 작은 수의 값들로 매핑하는 양자화가 실행된다. 예를 들어, 1106에서, 움직임 벡터 MVXHAScaled, MVYHAScaled가 16으로 나누어질 때 1 또는 15인 나머지를 가지면, 각각, 가장 가까운 정수 픽셀 L0 또는 R0으로 양자화된다. 예를 들어, 더 높은 정확성의 움직임 벡터 그리드에서 0 및 1인 값들은 비균일 움직임 벡터 그리드에서 0인 값으로 매핑된다. 또한, 1108에서, 15인 값은 정수 픽셀 R0으로 매핑된다. 1110에서, 더 높은 정확성의 움직임 벡터 그리드에서 2-5인 값들은 비균일 움직임 벡터 그리드에서 1인 값으로 매핑된다. 또한, 더 높은 정확성의 움직임 벡터 그리드에서 6-10인 값들은 비균일 움직임 벡터 그리드에서 2인 값으로 매핑되고, 더 높은 정확성의 움직임 벡터 그리드에서 11-14인 값들은 비균일 움직임 벡터 그리드에서 3인 값으로 매핑된다. 이러한 매핑들이 기술되더라도, 특정 실시예들은 다른 매핑들을 사용할 수 있다. 예를 들어, 값들 2-4는 1인 값으로 매핑될 수 있다. 다른 맵 다운 알고리즘들이 또한 사용될 수 있다.
일례에서, 더 높은 정확성의 움직임 벡터 그리드의 3/16 위상 오프셋은 "3"에 대응한다. 시간적 거리를 사용해서 스케일링이 실행될 때, 스케일링은 (4×)(3/16))/1 = 12/16 펠과 동일할 수 있다. 12/16 펠 값은 비균일 움직임 벡터 그리드의 3의 위상 오프셋으로 매핑된다. 따라서, 3인 동일한 값이 스케일링에서 결정된다. 따라서, 배경 기술에서 상술된 바와 같이 1 펠 값을 결정하는 대신, 특정 실시예들은 1 펠보다 12/16 펠에 더 가까운 13/16 펠인 값을 결정한다. 따라서, 특정 실시예를 사용하는 스케일링된 움직임 벡터가 더 많이 정확하다.
인코더 및 디코더 일례들
특정 실시예들은 인코딩 및 디코딩 프로세스들 둘 다에서 사용될 수 있다. 인코딩에서, 움직임 벡터 예측자가 현재 블록에 대해 결정된다. 그 후, 움직임 벡터 스케일링 관리자(506)는 스케일링된 움직임 벡터를 결정한다. 인코더(502)는 디코더(504)에 송신된 비트스트림의 현재 블록에 대해 사용할 움직임 벡터 예측자를 코딩할 수 있다. 디코더(504)는 디코딩을 위한 비트스트림을 수신한다. 현재 블록에 대해, 디코더(504)는 인코딩 프로세스에서 사용된 움직임 벡터 예측자를 결정한다. 그 후, 움직임 벡터 스케일링 관리자(506)는 스케일링된 움직임 벡터를 결정한다. 이하에 인코더(502) 및 디코더(504)가 더 상세히 기술된다.
도 12a는 일 실시예에 따른 인코더(502)의 일례를 도시한다. 인코더(502)의 일반적인 동작이 이제 기술될 것이다. 기술된 인코딩 프로세스에 대한 변형들이 본 명세서의 설명 및 교시들에 기초하여 당업자에 의해 이해될 것임을 알 것이다.
현재 PU, x에 대해, 예측 PU, x'가 공간적 예측 또는 시간적 예측을 통해 획득된다. 그 후, 예측 PU는 현재 PU로부터 공제되어서, 잔여 PU, e를 생성한다. 공간적 예측 블록(1204)은, 수평, 수직, 45°대각선, 135°대각선, DC(flat averaging) 및 평면 등의, PU에 대해 상이한 공간적 예측 방향들을 포함할 수 있다.
시간적 예측 블록(1206)은 움직임 추정 및 움직임 보상 동작을 통해 시간적 예측을 실행한다. 움직임 추정 동작은 기준 픽처들에 대해 현재 PU의 최상 일치 예측을 탐색한다. 최상 일치 예측은 움직임 벡터(MV) 및 연관된 기준 픽처(refIdx)로 기술된다. 움직임 벡터 및 연관된 기준 픽처는 코딩된 비트스트림에 포함된다.
변환 블록(1207)은 잔여 PU, e로 변환 동작을 실행한다. 변환 블록(1207)은 변환 도메인의 잔여 PU, E를 출력한다.
양자화기(1208)는 그 후 잔여 PU, E의 변환 계수들을 양자화한다. 양자화기(1208)는 변환 계수들을 유한한 수의 가능한 값들로 변환한다. 엔트로피 코딩 블록(1210)은 양자화된 계수들을 엔트로피 인코딩하여, 최종 압축 비트들이 송신되게 야기한다. 문맥-적응 가변 길이 코딩(CAVLC) 또는 문맥-적응 바이너리 산술 코딩(CABAC) 등의 상이한 엔트로피 코딩 방법들이 사용될 수 있다.
또한, 인코더(502) 내의 디코딩 프로세스에서, 역양자화기(1212)가 잔여 PU의 양자화된 변환 계수들을 역양자화한다. 역양자화기(1212)는 그 후 역양자화된 변환 계수들, E'를 출력한다. 역변환 블록(1214)은 역양자화된 변환 계수들을 수신하며, 상기 계수들은 그 후 역변환되어, 재구성된 잔여 PU, e'를 생성한다. 재구성된 PU, e'는 그 후 공간 또는 시간 대응 예측, x'에 추가되어, 새로운 재구성된 PU, x"를 형성한다. 루프 필터(1216)는 재구성된 PU, x"에 대해 디블로킹을 실행하여, 블로킹 아티팩트들을 감소시킨다. 또한, 루프 필터(1216)는 디코딩된 픽처에 대한 디블로킹 필터 프로세스의 완료 후에 샘플 적응 오프셋 프로세스를 실행할 수 있으며, 이는 재구성된 픽셀들 및 원래의 픽셀들 간의 픽셀 값 오프셋을 보상한다. 또한, 루프 필터(1216)는 재구성된 PU에 대해 적응 필터링을 실행할 수 있으며, 이는 입력 및 출력 픽처들 간의 코딩 왜곡을 최소화한다. 또한, 재구성된 픽처들이 기준 픽처들이면, 기준 픽처들은 차후 시간적 예측을 위해 기준 버퍼(1218)에 저장된다.
보간 필터(1220)는 시간적 예측 블록(1206)의 서브-픽셀 픽셀 값들을 보간한다. 위상 오프셋들은 균일하지 않을 수 있다. 그 후, 시간적 예측 블록(1206)은 보간 필터(1220)에 의해 출력된 서브-픽셀 픽셀 값들을 사용해서, 현재 PU의 예측을 생성한다.
도 12b는 일 실시예에 따른 디코더(504)의 일례를 도시한다. 디코더(504)의 일반적인 동작이 이제 기술될 것이다. 기술된 디코딩 프로세스에 대한 변형들이 본 명세서의 설명 및 교시들에 기초하여 당업자에 의해 이해될 것임을 알 것이다. 디코더(504)는 압축된 비디오 콘텐츠에 대한 입력 비트들을 인코더(502)로부터 수신한다.
엔트로피 디코딩 블록(1230)은 잔여 PU의 양자화된 변환 계수들에 대응하는 입력 비트들에 대해 엔트로피 디코딩을 실행한다. 역양자화기(1232)는 잔여 PU의 양자화된 변환 계수들을 역양자화한다. 역양자화기(1232)는 그 후 잔여 PU의 역양자화된 변환 계수들, E'를 출력한다. 역변환 블록(1234)은 역양자화된 변환 계수들을 수신하며, 상기 계수들은 그 후 역변환되어, 재구성된 잔여 PU, e'를 생성한다.
재구성된 PU, e'는 그 후 공간 또는 시간 대응 예측, x'에 추가되어, 새로운 구성 PU, x"를 형성한다. 루프 필터(1236)는 재구성된 PU, x"에 대해 디블로킹을 실행하여, 블로킹 아티팩트들을 감소시킨다. 또한, 루프 필터(1236)는 디코딩된 픽처에 대한 디블로킹 필터 프로세스의 완료 후에 샘플 적응 오프셋 프로세스를 실행할 수 있으며, 이는 재구성된 픽셀들 및 원래의 픽셀들 간의 픽셀 값 오프셋을 보상한다. 또한, 루프 필터(1236)는 재구성된 PU에 대해 적응 루프 필터링을 실행할 수 있으며, 이는 입력 및 출력 픽처들 간의 코딩 왜곡을 최소화한다. 또한, 재구성된 픽처들이 기준 픽처들이면, 기준 픽처들은 차후 시간적 예측을 위해 기준 버퍼(1238)에 저장된다.
예측 PU, x'가 공간적 예측 또는 시간적 예측을 통해 획득된다. 공간적 예측 블록(1240)은, 수평, 수직, 45°대각선, 135°대각선, DC(flat averaging) 및 평면 등의, PU에 대해 디코딩된 공간적 예측 방향들을 수신할 수 있다. 공간적 예측 방향들은 예측 PU, x'를 결정하는데 사용된다.
보간 필터(1244)는 시간적 예측 블록(1242)으로의 입력에 대한 서브-픽셀 픽셀 값들을 보간한다. 위상 오프셋들은 상술된 바와 같이 균일하지 않을 수 있다. 시간적 예측 블록(1242)은 움직임 보상 동작에서 보간 필터(1244)에 의해 출력된 보간된 서브-픽셀 픽셀 값들 및 디코딩된 움직임 벡터 정보를 사용해서 시간적 예측을 실행한다. 시간적 예측 블록(1242)은 예측 PU, x'를 출력한다.
특정 실시예들은 명령 실행 시스템, 장치, 시스템 또는 기계와 관련하여 또는 그에 의해 사용되는 비일시 컴퓨터 판독 가능 기억 매체로 구현될 수 있다. 컴퓨터 판독 가능 기억 매체는 특정 실시예들에 의해 기술된 방법을 실행하도록 컴퓨터 시스템을 제어하기 위한 명령들을 포함한다. 명령들은, 하나의 또는 그 이상의 컴퓨터 프로세서들에 의해 실행될 때, 특정 실시예들에 기술된 바를 실행하게 동작할 수 있다.
본 명세서에서 설명에서 또한 이어지는 청구항들에 걸쳐 사용된 바와 같이, "a(한, 하나의)", "an(한, 하나의)", 및 "the(그, 상기)"는 문맥이 달리 명백히 지시하지 않는 한 복수의 대상들을 포함한다. 또한, 본 명세서에서 설명에서 또한 이어지는 청구항들에 걸쳐 사용된 바와 같이, "in"의 의미는 문맥이 달리 명백히 지시하지 않는 한 "in" 및"on"을 포함한다.
상술된 설명은 특정 실시예들의 양상들이 구현될 수 있는 방법의 일례들과 함께 각종 실시예들을 설명한다. 상술된 일례들 및 실시예들은 유일한 실시예들로 간주되지 않아야만 하며, 이하의 청구항들에 의해 정의된 특정 실시예들의 유연성 및 장점들을 설명하기 위해 제시된다. 상술된 설명 및 이하의 청구항들에 기초하여, 다른 구성들, 실시예들, 구현들 및 동등물들이 청구항들에 의해 정의된 본 발명의 범위로부터 벗어나지 않은 채로 사용될 수 있다.
Claims (23)
- 제1 블록에 대한 스케일링된 움직임 벡터를 결정하기 위한 방법으로서,
제2 블록에 대한 움직임 벡터를 결정하는 단계 - 상기 움직임 벡터는 비균일 움직임 벡터 그리드에 있음 - ;
컴퓨팅 장치에 의해, 상기 제2 블록에 대한 움직임 벡터를 상기 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하는 단계;
상기 컴퓨팅 장치에 의해, 상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 제2 블록에 대한 움직임 벡터를 스케일링하는 단계; 및
상기 컴퓨팅 장치에 의해, 상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터를 상기 비균일 움직임 벡터 그리드에 매핑하는 단계 - 상기 비균일 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터는 시간적 예측 프로세스 동안 제1 블록과 연관됨 -
를 포함하는 방법. - 제1항에 있어서,
상기 비균일 움직임 벡터 그리드는 2개의 풀-픽셀 위치들 사이에 제1 수의 서브-픽셀 위치들을 포함하고, 상기 더 높은 정확성의 움직임 벡터 그리드는 상기 2개의 풀-픽셀 위치들 사이에 상기 제1 수보다 더 큰 제2 수의 서브-픽셀 위치들을 포함하는 방법. - 제1항에 있어서,
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 제2 블록에 대한 움직임 벡터를 스케일링하는 단계는 상기 제1 블록에 대한 제1 기준 픽처와 상기 제2 블록에 대한 제2 기준 픽처 간의 차이에 기초하여 상기 움직임 벡터를 스케일링하는 단계를 포함하는 방법. - 제3항에 있어서,
상기 차이는 시간적인 차이인 방법. - 제1항에 있어서,
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터는 상기 더 높은 정확성의 움직임 벡터 그리드에서 임의의 위치를 취하도록 허용되는 방법. - 제1항에 있어서,
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터를 상기 비균일 움직임 벡터 그리드에 매핑하는 단계는 상기 비균일 움직임 벡터 그리드로의 매핑을 실행하기 위해 알고리즘을 사용하는 단계를 포함하는 방법. - 제6항에 있어서,
상기 알고리즘은 더 많이 정확한 더 높은 정확성의 움직임 벡터 그리드에 있는 위치들의 서브세트를 상기 비균일 움직임 벡터 그리드에 있는 단일 위치에 매핑하는 단계를 포함하는 방법. - 제1항에 있어서,
상기 비균일 움직임 벡터 그리드는 2개의 풀-픽셀 위치들 사이에 균일하지 않게 간격을 둔 서브-픽셀 위치들을 포함하고,
상기 더 높은 정확성의 움직임 벡터 그리드는 2개의 풀-픽셀 위치들 사이에 균일하게 간격을 둔 서브-픽셀 위치들을 포함하는 방법. - 제1항에 있어서,
비디오 콘텐츠를 위한 비트스트림에 상기 스케일링된 움직임 벡터에 대한 정보를 코딩하는 단계; 및
상기 비트스트림을 인코더로부터 디코더로 송신하는 단계
를 더 포함하는 방법. - 제1 블록에 대한 스케일링된 움직임 벡터를 결정하기 위한 방법으로서,
인코더로부터의 비트스트림을 디코더에서 수신하는 단계;
상기 비트스트림의 정보를 사용해서 제2 블록에 대한 움직임 벡터를 결정하는 단계 - 상기 움직임 벡터는 비균일 움직임 벡터 그리드에 있음 - ;
상기 디코더에 의해, 상기 제2 블록에 대한 움직임 벡터를 상기 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하는 단계;
상기 디코더에 의해, 상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 제2 블록에 대한 움직임 벡터를 스케일링하는 단계; 및
상기 디코더에 의해, 상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터를 상기 비균일 움직임 벡터 그리드에 매핑하는 단계 - 상기 비균일 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터는 상기 비트스트림을 디코딩하기 위해 시간적 예측 프로세스 동안 제1 블록과 연관됨 -
를 포함하는 방법. - 제10항에 있어서,
상기 비균일 움직임 벡터 그리드는 2개의 풀-픽셀 위치들 사이에 제1 수의 서브-픽셀 위치들을 포함하고, 상기 더 높은 정확성의 움직임 벡터 그리드는 상기 2개의 풀-픽셀 위치들 사이에 상기 제1 수보다 더 큰 제2 수의 서브-픽셀 위치들을 포함하는 방법. - 제10항에 있어서,
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 제2 블록에 대한 움직임 벡터를 스케일링하는 단계는 상기 제1 블록에 대한 제1 기준 픽처와 상기 제2 블록에 대한 제2 기준 픽처 간의 차이에 기초하여 상기 움직임 벡터를 스케일링하는 단계를 포함하는 방법. - 제10항에 있어서,
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터는 상기 더 높은 정확성의 움직임 벡터 그리드에서 임의의 위치를 취하도록 허용되는 방법. - 제1 블록에 대한 스케일링된 움직임 벡터를 결정하도록 구성된 장치로서,
하나의 또는 그 이상의 컴퓨터 프로세서들; 및
명령들을 포함하는 비일시 컴퓨터 판독 가능 기억 매체를 포함하고, 상기 명령들은, 실행될 때, 상기 하나의 또는 그 이상의 컴퓨터 프로세서들이,
제2 블록에 대한 움직임 벡터를 결정하고 - 상기 움직임 벡터는 비균일 움직임 벡터 그리드에 있음 - ;
상기 제2 블록에 대한 움직임 벡터를 상기 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하며;
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 제2 블록에 대한 움직임 벡터를 스케일링하고;
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터를 상기 비균일 움직임 벡터 그리드에 매핑하도록 - 상기 비균일 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터는 시간적 예측 프로세스 동안 제1 블록과 연관됨 -
구성되게 상기 하나의 또는 그 이상의 컴퓨터 프로세서들을 제어하는 장치. - 제14항에 있어서,
상기 비균일 움직임 벡터 그리드는 제1 수의 서브-픽셀 위치들을 포함하고, 상기 더 높은 정확성의 움직임 벡터 그리드는 상기 제1 수보다 더 큰 제2 수의 서브-픽셀 위치들을 포함하는 장치. - 제14항에 있어서,
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 제2 블록에 대한 움직임 벡터를 스케일링하는 단계는 상기 제1 블록에 대한 제1 기준 픽처와 상기 제2 블록에 대한 제2 기준 픽처 간의 차이에 기초하여 상기 움직임 벡터를 스케일링하는 단계를 포함하는 장치. - 제16항에 있어서,
상기 차이는 시간적인 차이인 장치. - 제14항에 있어서,
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터를 상기 비균일 움직임 벡터 그리드에 매핑하는 단계는 상기 비균일 움직임 벡터 그리드로의 매핑을 실행하기 위해 알고리즘을 사용하는 단계를 포함하는 장치. - 제18항에 있어서,
상기 알고리즘은 더 많이 정확한 더 높은 정확성의 움직임 벡터 그리드에 있는 위치들의 서브세트를 상기 비균일 움직임 벡터 그리드에 있는 단일 위치에 매핑하는 단계를 포함하는 장치. - 제14항에 있어서,
상기 비균일 움직임 벡터 그리드는 서브-픽셀 위치들 사이에 균일하지 않게 간격을 둔 서브-픽셀 위치들을 포함하고,
상기 더 높은 정확성의 움직임 벡터 그리드는 서브-픽셀 위치들 사이에 균일하게 간격을 둔 서브-픽셀 위치들을 포함하는 장치. - 제14항에 있어서,
비디오 콘텐츠를 위한 비트스트림에 상기 스케일링된 움직임 벡터에 대한 정보를 코딩하고;
상기 비트스트림을 인코더로부터 디코더로 송신하도록
더 동작하는 장치. - 제14항에 있어서,
인코더로부터의 비트스트림을 디코더에서 수신하고;
상기 비트스트림의 정보를 사용해서 상기 제2 블록에 대한 움직임 벡터를 결정하며;
상기 비트스트림의 디코딩 프로세스에 대한 상기 스케일링된 움직임 벡터를 결정하기 위해 상기 스케일링을 실행하도록
더 동작하는 장치. - 제1 블록에 대한 스케일링된 움직임 벡터를 결정하도록 구성된 장치로서,
하나의 또는 그 이상의 컴퓨터 프로세서들; 및
명령들을 포함하는 비일시 컴퓨터 판독 가능 기억 매체를 포함하고, 상기 명령들은, 실행될 때, 상기 하나의 또는 그 이상의 컴퓨터 프로세서들이,
인코더로부터의 비트스트림을 디코더에서 수신하고;
상기 비트스트림의 정보를 사용해서 제2 블록에 대한 움직임 벡터를 결정하며 - 상기 움직임 벡터는 비균일 움직임 벡터 그리드에 있음 - ;
상기 제2 블록에 대한 움직임 벡터를 상기 비균일 움직임 벡터 그리드보다 더 많이 정확한 더 높은 정확성의 균일 움직임 벡터 그리드에 매핑하고;
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 제2 블록에 대한 움직임 벡터를 스케일링하며;
상기 더 높은 정확성의 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터를 상기 비균일 움직임 벡터 그리드에 매핑하도록 - 상기 비균일 움직임 벡터 그리드에서 상기 스케일링된 움직임 벡터는 상기 비트스트림을 디코딩하기 위해 시간적 예측 프로세스 동안 제1 블록과 연관됨 -
구성되게 상기 하나의 또는 그 이상의 컴퓨터 프로세서들을 제어하는 장치.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161556147P | 2011-11-04 | 2011-11-04 | |
US61/556,147 | 2011-11-04 | ||
US13/667,992 | 2012-11-02 | ||
US13/667,992 US9185428B2 (en) | 2011-11-04 | 2012-11-02 | Motion vector scaling for non-uniform motion vector grid |
PCT/US2012/063434 WO2013067440A1 (en) | 2011-11-04 | 2012-11-02 | Motion vector scaling for non-uniform motion vector grid |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140068250A true KR20140068250A (ko) | 2014-06-05 |
KR101616010B1 KR101616010B1 (ko) | 2016-05-17 |
Family
ID=47295157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020147011612A KR101616010B1 (ko) | 2011-11-04 | 2012-11-02 | 비균일 움직임 벡터 그리드에 대한 움직임 벡터 스케일링 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9185428B2 (ko) |
KR (1) | KR101616010B1 (ko) |
CN (1) | CN104041041B (ko) |
BR (1) | BR112014010539A2 (ko) |
WO (1) | WO2013067440A1 (ko) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3139611A1 (en) * | 2011-03-14 | 2017-03-08 | HFI Innovation Inc. | Method and apparatus for deriving temporal motion vector prediction |
WO2013006386A1 (en) | 2011-07-01 | 2013-01-10 | General Instrument Corporation | Motion vector prediction design simplification |
SI3767952T1 (sl) * | 2012-01-19 | 2022-01-31 | Electronics And Telecommunications Research Institute | Naprava za kodiranje/dekodiranje slike |
US9172970B1 (en) | 2012-05-29 | 2015-10-27 | Google Inc. | Inter frame candidate selection for a video encoder |
US11317101B2 (en) | 2012-06-12 | 2022-04-26 | Google Inc. | Inter frame candidate selection for a video encoder |
US9485515B2 (en) | 2013-08-23 | 2016-11-01 | Google Inc. | Video coding using reference motion vectors |
US9503746B2 (en) | 2012-10-08 | 2016-11-22 | Google Inc. | Determine reference motion vectors |
US10063887B2 (en) * | 2013-10-18 | 2018-08-28 | Lg Electronics Inc. | Video decoding apparatus and method for decoding multi-view video |
KR20160072104A (ko) * | 2013-10-18 | 2016-06-22 | 엘지전자 주식회사 | 멀티 뷰를 포함하는 비디오 부호화/복호화 방법 및 장치 |
KR102490706B1 (ko) * | 2014-09-30 | 2023-01-19 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오 코딩을 위한 해시 기반 인코더 결정 |
KR101780444B1 (ko) * | 2015-10-29 | 2017-09-21 | 삼성에스디에스 주식회사 | 영상 신호의 노이즈 제거 방법 |
US10812791B2 (en) * | 2016-09-16 | 2020-10-20 | Qualcomm Incorporated | Offset vector identification of temporal motion vector predictor |
US11431987B2 (en) * | 2019-01-08 | 2022-08-30 | Tencent America LLC | Method and apparatus for memory bandwidth reduction for small inter blocks |
Family Cites Families (125)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0293644B1 (de) | 1987-06-02 | 1992-03-25 | Siemens Aktiengesellschaft | Verfahren zur Ermittlung von Bewegungsvektorfeldern aus digitalen Bildsequenzen |
DE69029999T2 (de) | 1990-07-20 | 1997-08-14 | Philips Electronics Nv | Vorrichtung zur Verarbeitung von Bewegungsvektoren |
JPH0594537A (ja) | 1991-02-27 | 1993-04-16 | Canon Inc | グラフ処理方法 |
EP0533195A2 (en) | 1991-09-20 | 1993-03-24 | Sony Corporation | Picture signal encoding and/or decoding apparatus |
JP3263960B2 (ja) | 1991-10-22 | 2002-03-11 | ソニー株式会社 | 動きベクトル符号器および復号器 |
US5375201A (en) | 1992-12-18 | 1994-12-20 | Borland International, Inc. | System and methods for intelligent analytical graphing |
FI94306C (fi) | 1993-07-15 | 1995-08-10 | Nokia Technology Gmbh | Menetelmä televisiokuvan pienten kuvasegmenttien liikevektoreiden määrittämiseksi |
US5461708A (en) | 1993-08-06 | 1995-10-24 | Borland International, Inc. | Systems and methods for automated graphing of spreadsheet information |
US5398068A (en) | 1993-09-02 | 1995-03-14 | Trustees Of Princeton University | Method and apparatus for determining motion vectors for image sequences |
JP3846642B2 (ja) | 1994-01-31 | 2006-11-15 | ソニー株式会社 | 動き量検出方法及び動き量検出装置 |
TW321748B (ko) | 1994-02-23 | 1997-12-01 | Rca Thomson Licensing Corp | |
KR0148151B1 (ko) | 1994-05-11 | 1998-09-15 | 김광호 | 개선된 차분동부호테이블을 이용한 차분동벡터값의 가변장부호화방법 및 그 장치 |
FR2725577B1 (fr) | 1994-10-10 | 1996-11-29 | Thomson Consumer Electronics | Procede de codage ou de decodage de vecteurs mouvement et dispositif de codage ou de decodage mettant en oeuvre ledit procede |
DE69619002T2 (de) | 1995-03-10 | 2002-11-21 | Toshiba Kawasaki Kk | Bildkodierungs-/-dekodierungsvorrichtung |
TW257924B (en) | 1995-03-18 | 1995-09-21 | Daewoo Electronics Co Ltd | Method and apparatus for encoding a video signal using feature point based motion estimation |
EP1274252A3 (en) | 1995-08-29 | 2005-10-05 | Sharp Kabushiki Kaisha | Video coding device and video decoding device with a motion compensated interframe prediction |
US5991447A (en) | 1997-03-07 | 1999-11-23 | General Instrument Corporation | Prediction and coding of bi-directionally predicted video object planes for interlaced digital video |
US6005980A (en) | 1997-03-07 | 1999-12-21 | General Instrument Corporation | Motion estimation and compensation of video object planes for interlaced digital video |
US6404813B1 (en) | 1997-03-27 | 2002-06-11 | At&T Corp. | Bidirectionally predicted pictures or video object planes for efficient and flexible video coding |
US6359929B1 (en) | 1997-07-04 | 2002-03-19 | Matsushita Electric Industrial Co., Ltd. | Image predictive decoding method, image predictive decoding apparatus, image predictive coding apparatus, and data storage medium |
US6011870A (en) | 1997-07-18 | 2000-01-04 | Jeng; Fure-Ching | Multiple stage and low-complexity motion estimation for interframe video coding |
KR100244291B1 (ko) | 1997-07-30 | 2000-02-01 | 구본준 | 동영상 움직임 벡터 코딩 방법 |
US5987180A (en) | 1997-09-26 | 1999-11-16 | Sarnoff Corporation | Multiple component compression encoder motion search method and apparatus |
US6014181A (en) | 1997-10-13 | 2000-01-11 | Sharp Laboratories Of America, Inc. | Adaptive step-size motion estimation based on statistical sum of absolute differences |
KR100600419B1 (ko) | 1997-11-17 | 2006-07-13 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 움직임 보상된 예측 영상 부호화 및 복호화 |
KR100523908B1 (ko) | 1997-12-12 | 2006-01-27 | 주식회사 팬택앤큐리텔 | 격행주사 영상에 대한 영상신호 부호화 장치 및 그 방법 |
CN1166215C (zh) | 1998-02-13 | 2004-09-08 | 皇家菲利浦电子有限公司 | 视频编码方法和装置 |
US6058143A (en) | 1998-02-20 | 2000-05-02 | Thomson Licensing S.A. | Motion vector extrapolation for transcoding video sequences |
EP0940774A3 (en) | 1998-03-05 | 2000-07-05 | Matsushita Electric Industrial Co., Ltd. | Motion vector coding and decoding apparatus and method |
US6434196B1 (en) * | 1998-04-03 | 2002-08-13 | Sarnoff Corporation | Method and apparatus for encoding video information |
EP0979011A1 (en) | 1998-08-06 | 2000-02-09 | STMicroelectronics S.r.l. | Detection of a change of scene in a motion estimator of a video encoder |
US6876702B1 (en) | 1998-10-13 | 2005-04-05 | Stmicroelectronics Asia Pacific (Pte) Ltd. | Motion vector detection with local motion estimator |
GB2343319B (en) | 1998-10-27 | 2003-02-26 | Nokia Mobile Phones Ltd | Video coding |
US6735249B1 (en) | 1999-08-11 | 2004-05-11 | Nokia Corporation | Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding |
JP4596718B2 (ja) | 1999-08-11 | 2010-12-15 | ノキア コーポレイション | 適応動きベクトル場符号化 |
JP2001112000A (ja) | 1999-10-07 | 2001-04-20 | Matsushita Electric Ind Co Ltd | 映像信号符号化装置 |
KR20010053814A (ko) | 1999-12-01 | 2001-07-02 | 윤종용 | 영상 부호화 시스템의 부호화방식 선택장치 및 방법 |
US6473460B1 (en) | 2000-03-31 | 2002-10-29 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for calculating motion vectors |
US6711211B1 (en) | 2000-05-08 | 2004-03-23 | Nokia Mobile Phones Ltd. | Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder |
JP3681342B2 (ja) | 2000-05-24 | 2005-08-10 | 三星電子株式会社 | 映像コーディング方法 |
US7266150B2 (en) * | 2001-07-11 | 2007-09-04 | Dolby Laboratories, Inc. | Interpolation of video compression frames |
EP1294194B8 (en) | 2001-09-10 | 2010-08-04 | Texas Instruments Incorporated | Apparatus and method for motion vector estimation |
JP4130783B2 (ja) | 2002-04-23 | 2008-08-06 | 松下電器産業株式会社 | 動きベクトル符号化方法および動きベクトル復号化方法 |
US6912255B2 (en) | 2002-05-30 | 2005-06-28 | Mobixell Netwoks Inc. | Bit rate control through selective modification of DCT coefficients |
US20040001546A1 (en) | 2002-06-03 | 2004-01-01 | Alexandros Tourapis | Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation |
US7010037B2 (en) | 2002-08-06 | 2006-03-07 | Koninklijke Philips Electronics N.V. | System and method for rate-distortion optimized data partitioning for video coding using backward adaptation |
EP1540964A1 (en) | 2002-09-11 | 2005-06-15 | Koninklijke Philips Electronics N.V. | Video coding method and device |
KR100506864B1 (ko) | 2002-10-04 | 2005-08-05 | 엘지전자 주식회사 | 모션벡터 결정방법 |
US7002580B1 (en) | 2003-05-14 | 2006-02-21 | At&T Corp | Method and apparatus for automatically generating charts |
WO2005004335A2 (en) | 2003-06-25 | 2005-01-13 | Georgia Tech Research Corporation | Cauchy-distribution based coding system and method |
CN1225127C (zh) | 2003-09-12 | 2005-10-26 | 中国科学院计算技术研究所 | 一种用于视频编码的编码端/解码端双向预测方法 |
US7362804B2 (en) | 2003-11-24 | 2008-04-22 | Lsi Logic Corporation | Graphical symbols for H.264 bitstream syntax elements |
US7400681B2 (en) | 2003-11-28 | 2008-07-15 | Scientific-Atlanta, Inc. | Low-complexity motion vector prediction for video codec with two lists of reference pictures |
JP4338654B2 (ja) | 2004-03-18 | 2009-10-07 | 三洋電機株式会社 | 動きベクトル検出装置及び方法、及びその動きベクトル検出装置を利用可能な画像符号化装置 |
DE602004002455T2 (de) | 2004-04-30 | 2007-01-11 | Matsushita Electric Industrial Co., Ltd., Kadoma | Bewegungsvektorschätzung durch adaptive zeitliche Vorhersage |
US7801383B2 (en) | 2004-05-15 | 2010-09-21 | Microsoft Corporation | Embedded scalar quantizers with arbitrary dead-zone ratios |
US7953152B1 (en) | 2004-06-28 | 2011-05-31 | Google Inc. | Video compression and encoding method |
US7978770B2 (en) | 2004-07-20 | 2011-07-12 | Qualcomm, Incorporated | Method and apparatus for motion vector prediction in temporal video compression |
US8340172B2 (en) | 2004-11-29 | 2012-12-25 | Qualcomm Incorporated | Rate control techniques for video encoding using parametric equations |
US7581168B2 (en) | 2004-12-20 | 2009-08-25 | Microsoft Corporation | Method, system, and computer-readable medium for determining whether to reproduce chart images calculated from a workbook |
US7580456B2 (en) | 2005-03-01 | 2009-08-25 | Microsoft Corporation | Prediction-based directional fractional pixel motion estimation for video coding |
KR100703760B1 (ko) | 2005-03-18 | 2007-04-06 | 삼성전자주식회사 | 시간적 레벨간 모션 벡터 예측을 이용한 비디오인코딩/디코딩 방법 및 장치 |
US8457203B2 (en) | 2005-05-26 | 2013-06-04 | Ntt Docomo, Inc. | Method and apparatus for coding motion and prediction weighting parameters |
US8208564B2 (en) | 2005-06-24 | 2012-06-26 | Ntt Docomo, Inc. | Method and apparatus for video encoding and decoding using adaptive interpolation |
US8867618B2 (en) | 2005-07-22 | 2014-10-21 | Thomson Licensing | Method and apparatus for weighted prediction for scalable video coding |
US8208540B2 (en) | 2005-08-05 | 2012-06-26 | Lsi Corporation | Video bitstream transcoding method and apparatus |
FR2897213A1 (fr) | 2006-02-08 | 2007-08-10 | Thomson Licensing Sas | Procede de codage par blocs d'images d'une sequence d'images video |
JP2007221662A (ja) | 2006-02-20 | 2007-08-30 | Fujitsu Ltd | 動きベクトル算出装置 |
US8442117B2 (en) | 2006-03-27 | 2013-05-14 | Chang Gung University | Method of block matching-based motion estimation in video coding |
WO2007136088A1 (ja) | 2006-05-24 | 2007-11-29 | Panasonic Corporation | 画像符号化装置、画像符号化方法、及び画像符号化用集積回路 |
JP4584871B2 (ja) | 2006-06-09 | 2010-11-24 | パナソニック株式会社 | 画像符号化記録装置および画像符号化記録方法 |
KR101370919B1 (ko) | 2006-07-12 | 2014-03-11 | 엘지전자 주식회사 | 신호처리방법 및 장치 |
US20080025390A1 (en) | 2006-07-25 | 2008-01-31 | Fang Shi | Adaptive video frame interpolation |
JP4592656B2 (ja) | 2006-08-17 | 2010-12-01 | 富士通セミコンダクター株式会社 | 動き予測処理装置、画像符号化装置および画像復号化装置 |
US20080056354A1 (en) | 2006-08-29 | 2008-03-06 | Microsoft Corporation | Transcoding Hierarchical B-Frames with Rate-Distortion Optimization in the DCT Domain |
US7573407B2 (en) | 2006-11-14 | 2009-08-11 | Qualcomm Incorporated | Memory efficient adaptive block coding |
TWI345915B (en) | 2006-12-29 | 2011-07-21 | Nat Univ Tsing Hua | Method of motion estimation for image compression |
US9411903B2 (en) | 2007-03-05 | 2016-08-09 | Oracle International Corporation | Generalized faceted browser decision support tool |
US20080240242A1 (en) | 2007-03-27 | 2008-10-02 | Nokia Corporation | Method and system for motion vector predictions |
CN101658044B (zh) * | 2007-04-09 | 2012-11-14 | 诺基亚公司 | 以低编码器和解码器复杂度进行视频编码的高精度运动矢量 |
JP4893471B2 (ja) | 2007-05-24 | 2012-03-07 | カシオ計算機株式会社 | 画像処理装置及びプログラム |
US20080310514A1 (en) | 2007-06-14 | 2008-12-18 | Texas Instruments Incorporated | Adaptive Density Search of Motion Estimation for Realtime Video Compression |
US8792556B2 (en) | 2007-06-19 | 2014-07-29 | Samsung Electronics Co., Ltd. | System and method for correcting motion vectors in block matching motion estimation |
US8006194B2 (en) | 2007-08-06 | 2011-08-23 | Apple Inc. | Associating an object with a relevant data source |
US8121197B2 (en) | 2007-11-13 | 2012-02-21 | Elemental Technologies, Inc. | Video encoding and decoding using parallel processors |
US8331664B2 (en) | 2008-01-21 | 2012-12-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Prediction-based image processing |
JP5194833B2 (ja) | 2008-01-23 | 2013-05-08 | ソニー株式会社 | 符号化装置および方法、記録媒体、並びにプログラム |
JP5106203B2 (ja) | 2008-03-27 | 2012-12-26 | 株式会社東芝 | 補間画像生成装置、方法およびプログラム |
JP5406465B2 (ja) | 2008-04-24 | 2014-02-05 | 株式会社Nttドコモ | 画像予測符号化装置、画像予測符号化方法、画像予測符号化プログラム、画像予測復号装置、画像予測復号方法及び画像予測復号プログラム |
EP2330817B1 (en) * | 2008-09-04 | 2016-08-31 | Japan Science and Technology Agency | Video signal converting system |
KR101306834B1 (ko) | 2008-09-22 | 2013-09-10 | 에스케이텔레콤 주식회사 | 인트라 예측 모드의 예측 가능성을 이용한 영상 부호화/복호화 장치 및 방법 |
JP5213613B2 (ja) | 2008-09-26 | 2013-06-19 | キヤノン株式会社 | 画像処理装置及び画像処理方法及び撮像装置及びプログラム |
KR101458471B1 (ko) | 2008-10-01 | 2014-11-10 | 에스케이텔레콤 주식회사 | 영상 부호화/복호화 방법 및 장치 |
WO2010086041A1 (en) | 2009-01-30 | 2010-08-05 | Gottfried Wilhelm Leibniz Universität Hannover | Method and apparatus for coding and decoding a video signal |
US8762441B2 (en) * | 2009-06-05 | 2014-06-24 | Qualcomm Incorporated | 4X4 transform for media coding |
FI127117B (fi) | 2009-06-17 | 2017-11-30 | Gurulogic Microsystems Oy | Kuvaprosessoija ja tietokoneohjelma |
US8451904B2 (en) * | 2009-06-24 | 2013-05-28 | Qualcomm Incorporated | 8-point transform for media data coding |
JP5597968B2 (ja) | 2009-07-01 | 2014-10-01 | ソニー株式会社 | 画像処理装置および方法、プログラム、並びに記録媒体 |
GB2477033B (en) | 2009-07-03 | 2012-04-18 | Intel Corp | Techniques for motion estimation |
US8594200B2 (en) | 2009-11-11 | 2013-11-26 | Mediatek Inc. | Method of storing motion vector information and video decoding apparatus |
KR101441905B1 (ko) | 2009-11-18 | 2014-09-24 | 에스케이텔레콤 주식회사 | 후보 예측 움직임 벡터 집합 선택을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
US8358698B2 (en) | 2010-01-08 | 2013-01-22 | Research In Motion Limited | Method and device for motion vector estimation in video transcoding using full-resolution residuals |
KR101522850B1 (ko) | 2010-01-14 | 2015-05-26 | 삼성전자주식회사 | 움직임 벡터를 부호화, 복호화하는 방법 및 장치 |
EP3913923A1 (en) | 2010-01-19 | 2021-11-24 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding/decoding images using a motion vector of a previous block as a motion vector for the current block |
KR101752418B1 (ko) | 2010-04-09 | 2017-06-29 | 엘지전자 주식회사 | 비디오 신호 처리 방법 및 장치 |
EP2559166B1 (en) | 2010-04-13 | 2017-11-01 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Probability interval partioning encoder and decoder |
US8559512B2 (en) | 2010-05-05 | 2013-10-15 | Ceva D.S.P. Ltd. | Device, system, and method for predicting residual data for intra and inter frame encoding of image or video data |
US8855205B2 (en) | 2010-05-26 | 2014-10-07 | Newratek Inc. | Method of predicting motion vectors in video codec in which multiple references are allowed, and motion vector encoding/decoding apparatus using the same |
CN103141091A (zh) | 2010-06-21 | 2013-06-05 | 汤姆逊许可公司 | 图像数据编码/解码的方法及其设备 |
US10033997B2 (en) | 2010-06-23 | 2018-07-24 | Panasonic Intellectual Property Management Co., Ltd. | Image decoding apparatus, image decoding method, integrated circuit, and program |
US8855188B2 (en) | 2010-07-15 | 2014-10-07 | Sharp Laboratories Of America, Inc. | Method of parallel video coding based on mapping |
US8879634B2 (en) * | 2010-08-13 | 2014-11-04 | Qualcomm Incorporated | Coding blocks of data using one-to-one codes |
US8736767B2 (en) | 2010-09-29 | 2014-05-27 | Sharp Laboratories Of America, Inc. | Efficient motion vector field estimation |
US8787459B2 (en) | 2010-11-09 | 2014-07-22 | Sony Computer Entertainment Inc. | Video coding methods and apparatus |
US8711940B2 (en) | 2010-11-29 | 2014-04-29 | Mediatek Inc. | Method and apparatus of motion vector prediction with extended motion vector predictor |
EP2687016A4 (en) | 2011-03-15 | 2014-10-01 | Intel Corp | MOTION VECTOR DERIVATION WITH REDUCED MEMORY ACCESS |
US8891626B1 (en) | 2011-04-05 | 2014-11-18 | Google Inc. | Center of motion for encoding motion fields |
US9247266B2 (en) | 2011-04-18 | 2016-01-26 | Texas Instruments Incorporated | Temporal motion data candidate derivation in video coding |
US9143799B2 (en) * | 2011-05-27 | 2015-09-22 | Cisco Technology, Inc. | Method, apparatus and computer program product for image motion prediction |
JP5786478B2 (ja) | 2011-06-15 | 2015-09-30 | 富士通株式会社 | 動画像復号装置、動画像復号方法、及び動画像復号プログラム |
WO2013006386A1 (en) | 2011-07-01 | 2013-01-10 | General Instrument Corporation | Motion vector prediction design simplification |
US8908767B1 (en) | 2012-02-09 | 2014-12-09 | Google Inc. | Temporal motion vector prediction |
US20140092975A1 (en) | 2012-10-01 | 2014-04-03 | General Instrument Corporation | Devices and methods for using base layer motion vector for enhancement layer motion vector prediction |
US9485515B2 (en) | 2013-08-23 | 2016-11-01 | Google Inc. | Video coding using reference motion vectors |
US9503746B2 (en) | 2012-10-08 | 2016-11-22 | Google Inc. | Determine reference motion vectors |
-
2012
- 2012-11-02 US US13/667,992 patent/US9185428B2/en active Active
- 2012-11-02 CN CN201280054100.1A patent/CN104041041B/zh active Active
- 2012-11-02 KR KR1020147011612A patent/KR101616010B1/ko active IP Right Grant
- 2012-11-02 BR BR112014010539A patent/BR112014010539A2/pt not_active Application Discontinuation
- 2012-11-02 WO PCT/US2012/063434 patent/WO2013067440A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2013067440A1 (en) | 2013-05-10 |
KR101616010B1 (ko) | 2016-05-17 |
US20130114725A1 (en) | 2013-05-09 |
CN104041041A (zh) | 2014-09-10 |
CN104041041B (zh) | 2017-09-01 |
BR112014010539A2 (pt) | 2017-04-18 |
US9185428B2 (en) | 2015-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101616010B1 (ko) | 비균일 움직임 벡터 그리드에 대한 움직임 벡터 스케일링 | |
AU2015213340B2 (en) | Video decoder, video encoder, video decoding method, and video encoding method | |
KR101403343B1 (ko) | 부화소 움직임 추정을 이용한 인터 예측 부호화, 복호화방법 및 장치 | |
JP6025726B2 (ja) | 動画復号化装置 | |
US9319711B2 (en) | Joint sub-pixel interpolation filter for temporal prediction | |
US20140078394A1 (en) | Selective use of chroma interpolation filters in luma interpolation process | |
KR20160106020A (ko) | 동영상 복호화 장치 | |
KR20180059443A (ko) | 영상 코딩 시스템에서 움직임 벡터 정제 기반 인터 예측 방법 및 장치 | |
US9264725B2 (en) | Selection of phase offsets for interpolation filters for motion compensation | |
KR102147447B1 (ko) | 영상 코딩 시스템에서 인터 예측 방법 및 장치 | |
US9049454B2 (en) | High efficiency low complexity interpolation filters | |
US9036706B2 (en) | Fractional pixel interpolation filter for video compression | |
US20070172153A1 (en) | Directional interpolation method and video encoding/decoding apparatus and method using the directional interpolation method | |
KR20130086390A (ko) | 비디오 코딩을 위해 서브-픽셀들의 값들을 내삽하기 위한 적응적 서포트 | |
EP2953358A1 (en) | Moving image coding device and method | |
EP2774373B1 (en) | Motion vector scaling for non-uniform motion vector grid | |
WO2012100085A1 (en) | High efficiency low complexity interpolation filters | |
WO2014042838A1 (en) | Selective use of chroma interpolation filters in luma interpolation process |
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 | ||
FPAY | Annual fee payment |
Payment date: 20190410 Year of fee payment: 4 |