KR20150073904A - 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치 - Google Patents

다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치 Download PDF

Info

Publication number
KR20150073904A
KR20150073904A KR1020150081936A KR20150081936A KR20150073904A KR 20150073904 A KR20150073904 A KR 20150073904A KR 1020150081936 A KR1020150081936 A KR 1020150081936A KR 20150081936 A KR20150081936 A KR 20150081936A KR 20150073904 A KR20150073904 A KR 20150073904A
Authority
KR
South Korea
Prior art keywords
motion vector
unit
prediction
coding
motion
Prior art date
Application number
KR1020150081936A
Other languages
English (en)
Other versions
KR101722234B1 (ko
Inventor
정제창
진순종
박상준
이혁
Original Assignee
뉴라컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 뉴라컴 인코포레이티드 filed Critical 뉴라컴 인코포레이티드
Publication of KR20150073904A publication Critical patent/KR20150073904A/ko
Application granted granted Critical
Publication of KR101722234B1 publication Critical patent/KR101722234B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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
    • 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/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/55Motion estimation with spatial constraints, e.g. at image or region borders
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Abstract

본 발명은 다중 참조를 허용하는 비디오 코덱에서, 예측 모션 벡터를 이용하여 모션 추정시의 초기치를 선정하고, 상기 예측 모션 벡터를 이용하여 모션 벡터의 코딩량을 감소시키는 기술에 관한 것이다. 모션 벡터 부호화 장치는, 복수의 참조 프레임들 각각에 대하여, 현재 블록에 대한 주변 모션 벡터들을 생성하고, 상기 생성된 주변 모션 벡터들로부터 상기 현재 블록에 대한 예측 모션 벡터를 생성하는 예측 모션 벡터 생성부와, 상기 복수의 참조 프레임들의 탐색 영역을 대상으로, 상기 현재 블록에 대한 최종 모션 벡터 및 상기 최종 모션 벡터에 대응되는 최종 참조 프레임을 결정하는 모션 추정부와, 상기 현재 블록에 대한 최종 모션 벡터와, 상기 예측 모션 벡터 중에서 상기 결정된 최종 참조 프레임에 대응되는 최종 예측 모션 벡터 간의 차이를 구하는 차분기와, 상기 최종 참조 프레임에 관한 정보 및 상기 차이를 부호화하는 수단으로 이루어진다.

Description

다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치{Method for predicting motion vectors in a video codec that allows multiple referencing, motion vector encoding/decoding apparatus using the same}
본 발명은 비디오 압축 방법에 관한 것으로, 보다 상세하게는, 다중 참조를 허용하는 비디오 코덱에서의 모션 벡터 부호화 방법 및 장치, 모션 벡터 복호화 방법 및 장치에 관한 것이다.
인터넷을 포함한 정보통신 기술이 발달함에 따라 문자, 음성뿐만 아니라 화상통신이 증가하고 있다. 기존의 문자 위주의 통신 방식으로는 소비자의 다양한 욕구를 충족시키기에는 부족하며, 이에 따라 문자, 영상, 음악 등 다양한 형태의 정보를 수용할 수 있는 멀티미디어 서비스가 증가하고 있다. 멀티미디어 데이터는 그 양이 방대하여 대용량의 저장매체를 필요로 하며 전송 시에 넓은 대역폭을 필요로 한다. 따라서 문자, 영상, 오디오를 포함한 멀티미디어 데이터를 전송하기 위해서는 압축코딩기법을 사용하는 것이 필수적이다.
데이터를 압축하는 기본적인 원리는 데이터의 중복(redundancy) 요소를 제거하는 과정이다. 이미지에서 동일한 색이나 객체가 반복되는 것과 같은 공간적 중복이나, 동영상 프레임에서 인접 프레임이 거의 변화가 없는 경우나 오디오에서 같은 음이 계속 반복되는 것과 같은 시간적 중복, 또는 인간의 시각 및 지각 능력이 높은 주파수에 둔감한 것을 고려한 심리시각 중복을 제거함으로써 데이터를 압축할 수 있다.
이러한 동영상 압축 기법의 표준화를 위하여, MPEG(Moving Picture Experts Group)-2, MPEG-4, H.264 등 다양한 비디오 코딩 표준들이 등장하고 있다. 도 1에 도시된 바와 같이, 모든 비디오 코딩 기술들은 인접한 비디오 프레임들 간의 시간적 중복성을 제거하기 위하여 블록 모션 추정(block motion estimation)이라는 기법을 채택하고 있다.
예를 들어, 현재 프레임(10) 내의 어떤 블록(12)을 부호화하기 위해서는, 현재 프레임(10)과 다른 시간적 위치에 있는 참조 프레임(15)에서 상기 블록(12)과 매칭되는 블록(17)을 찾는다. 이 후, 현재 프레임(10)의 블록(12)과 참조 프레임(15)의 블록(17) 간의 차분(residual)를 구한 후, 이 차분을 부호화함으로써 부호화 효율을 높이는 것이다. 여기서, 블록들 간의 변위는 모션 벡터로서 표시되며, 모션 벡터에 의하여 참조 프레임(15)에 관한 모션 보상이 이루어진다.
이와 같이, 현재 블록(12)에 대한 모션 벡터를 구하는 모션 추정 과정은 전체 비디오 인코딩 과정에서 소요되는 연산량의 상당한 부분을 차지한다. 특히, 최근의 비디오 코딩 표준인 H.264는 인터 프레임 코딩(inter-frame coding) 또는 인터 픽춰 코딩(inter-picture coding)에 있어서, 4x4에서 16x16에 이르는 가변 블록 크기를 채용하고 있다. 이는 고정된 크기의 매크로블록(MB)을 코딩하는 종래의 기법에 비하여 코딩 효율에 있어서 상당한 향상을 보여주지만, 모션 벡터를 찾는 과정은 각각의 가변 블록 크기의 블록에 대하여 모두 수행되어야 하기 때문에 연산량이 매우 증가하는 단점이 있다. 이와 같은 연산량 증가는 실시간 방송, 실시간 화상 회의 등과 같이 인코더와 디코더 간의 시간차를 줄일 필요가 있는 어플리케이션에서는 특히 문제가 될 수 있다.
따라서, 모션 추정 과정에 있어서, 연산량을 감소시켜 고속 모션 추정을 제공하기 위한 많은 연구들이 이루어지고 있다. 이러한 연구들의 일환으로 조기 중단 기법, 계층적 탐색 방식 또는 블록 모드 스킵 방법 등이 알려져 있다.
도 2는 탐색 초기치(탐색 초기 위치)를 기준으로 모션 벡터를 탐색하는 개념을 보여주는 도면이다. 일반적으로, 모션 추정은 소정의 탐색 영역(22) 내에서 픽셀 또는 서브 픽셀 단위로 이동하면서 현재 블록(현재 모션 벡터를 찾고자 하는 블록)과 가장 잘 매칭되는 참조 프레임(20)에서의 영역을 찾는 과정이다. 이 때 상기 현재 블록과 상기 찾은 영역 사이의 변위가 바로 현재 블록의 모션 벡터가 된다.
그런데, 만약 모션 추정을 수행하기 이전에 현재 블록에 대한 예측 모션 벡터(predicted motion vector)를 알 수 있다면, 상기 블록의 위치(26)에서 상기 예측 모션 벡터가 가리키는 지점(24)을 탐색 초기치로 하여 모션 추정을 수행함으로써 모션 추정의 연산량을 감소시킬 수 있을 것이다. 이는 최종적으로 결정되는 모션 벡터가 상기 예측 모션 벡터와 차이가 작을 것이라는 예측에 기초한다. 또한, 예측 모션 벡터를 알 수 있다면, 이와 같은 모션 벡터의 초기치 뿐만 아니라 모션 벡터 자체의 코딩량을 감소시킬 수도 있다. 통상적인 비디오 코딩 기술들에서는 모션 벡터를 직접 모션 벡터 복호화 장치에 전송하는 것이 아니라, 상기 모션 벡터와 상기 예측 모션 벡터와의 차이를 모션 벡터 복호화 장치에 전송한다. 이러한 차이를 MVD(motion vector difference; 모션 벡터 차이)라고도 부른다. 당연하게도, 상기 예측 모션 벡터가 실제의 모션 벡터와 유사할수록 MVD는 0이 가까운 값이 되며 코딩 효율도 높아지게 되는 것이다.
본 발명은 상기한 필요성을 감안하여 창안된 것으로, 다중 참조를 허용하는 비디오 코덱에 있어서 보다 정확한 예측 모션 벡터를 구함으로써, 모션 추정시의 탐색 초기치를 보다 정확하게 설정하여 모션 추정에 있어서의 연산량을 감소시키는 것을 목적으로 한다.
또한, 본 발명은 다중 참조를 허용하는 비디오 코덱에 있어서 보다 정확한 예측 모션 벡터를 구함으로써 모션 벡터의 코딩량을 감소시켜 코딩 효율을 증가시키는 것을 다른 목적으로 한다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 모션 벡터 부호화 장치는, 복수의 참조 프레임들 각각에 대하여, 현재 블록에 대한 주변 모션 벡터들을 생성하고, 상기 생성된 주변 모션 벡터들로부터 상기 현재 블록에 대한 예측 모션 벡터를 생성하는 예측 모션 벡터 생성부; 상기 복수의 참조 프레임들의 탐색 영역을 대상으로, 상기 현재 블록에 대한 최종 모션 벡터 및 상기 최종 모션 벡터에 대응되는 최종 참조 프레임을 결정하는 모션 추정부; 상기 현재 블록에 대한 최종 모션 벡터와, 상기 예측 모션 벡터 중에서 상기 결정된 최종 참조 프레임에 대응되는 최종 예측 모션 벡터 간의 차이를 구하는 차분기; 및 상기 최종 참조 프레임에 관한 정보 및 상기 차이를 부호화하는 수단을 포함한다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 모션 벡터 복호화 장치는, 입력 비트스트림을 무손실 복호화하여, 현재 블록에 관한 모션 벡터 차이 및 참조 프레임 번호를 구하는 엔트로피 복호화부; 상기 현재 블록의 주변 블록들이 갖는 모션 벡터를 이용하여, 상기 참조 프레임 번호에 해당하는 참조 프레임 상에서, 상기 현재 블록에 대한 주변 모션 벡터들을 생성하고, 생성된 주변 모션 벡터들로부터 상기 현재 블록에 대한 예측 모션 벡터를 생성하는 예측 모션 벡터 생성부; 상기 모션 벡터 차이와 상기 생성된 현재 블록에 대한 예측 모션 벡터를 가산하는 가산기를 포함한다.
본 발명에 따르면 종래의 모션 벡터 예측 기법에 비하여, 비트스트림의 오버 헤드 없어도 보다 정확한 모션 벡터 예측이 가능하므로, 모션 추정시의 연산량 감소 및 비디오 코딩 효율의 향상을 도모할 수 있다.
도 1은 블록 모션 추정 기법을 사용하는 인터 프레임 코딩(또는 인터 픽춰 코딩)의 기본 개념을 보여주는 도면이다.
도 2는 탐색 초기치를 기준으로 모션 벡터를 탐색하는 개념을 보여주는 도면이다.
도 3은 모션 벡터를 결정해야 할 현재 블록과 이미 모션 벡터가 결정되어 있는 주변 블록들 간의 관계를 보여주는 도면이다.
도 4는 본 발명의 기본 개념을 예시하는 도면이다.
도 5는 본 발명의 일 실시예에 따른 예측 모션 벡터를 이용한 모션 벡터 부호화 장치의 구성을 도시한 블록도이다.
도 6은 본 발명의 일 실시예에 따른 모션 벡터 복호화 장치의 구성을 도시한 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
도 3은 예측 모션 벡터를 구하는 방법의 일례를 보여주는 도면이다. 상기 예측 모션 벡터는 상기 현재 블록 주변에 위치한 블록들 중에서 이미 모션 벡터가 결정된 블록들, 즉 좌측 블록(Left), 상측 블록(Upper) 및 우상측 블록(UpperRight)의 모션 벡터를 이용하여 얻어질 수 있다. 구체적으로 상기 예측 모션 벡터는 다음의 수학식 1에서 보여지는 바와 같이 메디안 연산을 통하여 구해질 수 있다. 이러한 메디안 연산은 노이즈에 강인하다는 이유로 가장 좋은 예측치로 이용되고 있다.
Figure pat00001
그런데, 다중 참조를 허용하지 않는 비디오 코딩 표준에서는 상기 주변 블록들의 모션 벡터들은 단일의 참조 프레임에서 얻어질 수 있으므로, 항상 세 개의 주변 모션 벡터들을 구할 수 있고, 여기에 메디안 연산을 적용하여 예측 모션 벡터를 구할 수 있다.
그러나, 다중 참조를 허용하는 비디오 코딩 표준에서는, 상기 주변 블록들이 갖는 모션 벡터가 서로 다른 참조 프레임으로부터 얻어진 것일 수 있으므로, 하나의 참조 프레임을 기준으로 할 때에는 세 개의 모션 벡터가 모두 존재하지는 않는 경우가 많다. 특정 참조 프레임에 있어서, 상기 세 개의 주변 모션 벡터들 중에서 일부만 존재하는 경우에는 그 일부만으로 예측 모션 벡터를 구하거나, 아예 주변 모션 벡터가 존재하지 않는 경우에는 예측 모션 벡터를 영(zero) 벡터로 설정하는 등의 제한된 방법을 사용할 수 있다.
예측 모션 벡터가 실제 구하고자 하는 모션 벡터와 얼마나 유사한가는 모션 추정의 속도뿐만 아니라, 비디오 코딩 효율에 직접적인 영향을 미치기 때문에 상기와 같은 제한된 방법으로는 부족하다고 볼 수 있다. 특히, H.264와 같이 가변 블록 크기의 모션 추정을 수행하는 경우에는, 모션 추정의 복잡성이 매우 높고, 텍스쳐 데이터의 코딩량에 비하여 모션 벡터의 코딩량이 상대적으로 증가하게 되기 때문에 보다 정확한 예측 모션 벡터를 구하는 것은 더욱 중요하다고 볼 수 있다.
본 발명의 다른 실시예에 따른 다중 참조를 허용하는 비디오 코딩 방식에서의 모션 벡터 복호화 방법에 대해서는 후술한다.
도 4는 본 발명의 기본 개념을 예시하는 도면이다. 현재 프레임(N) 또는 현재 픽춰(N)의 현재 블록(50)의 주변에는 주변 블록들(60, 70, 80)이 존재한다. 이러한 주변 블록들(60, 70, 80)은 이미 최종 모션 벡터가 결정되어 있다. 그런데, 다중 프레임(또는 픽춰) 참조하는 경우에는 상기 최종 모션 벡터 뿐만 아니라 상기 최종 모션 벡터를 구하기 위하여 참조한 프레임(또는 참조 픽춰) 즉, 최종 참조 프레임(또는 최종 참조 픽춰)이 함께 결정되어야 한다. 여기서, 상기 현재 블록 및 주변 블록의 단위는 다양한 크기일 수 있지만, 참조 프레임을 선택하는 단위인 8x8인 것으로 생각할 수 있다. 즉, H.264에 있어서 모션 벡터가 할당되는 단위는 4x4까지지만 적어도 참조 프레임의 선택은 8x8 단위로 이루어지는 것을 고려한 것이다. 물론, 도 4에서 8x8 블록에 대하여 하나의 모션 벡터로 표시하였지만 모션 벡터가 8x8 블록보다 더 세분화된 블록에 할당된 경우에는 상기 세분화된 모션 벡터의 대표값(평균, 메디안 등)이라고 생각할 수 있을 것이다.
도 4에서 주변 블록(60)의 최종 참조 프레임은 N-1이고, 주변 블록(70)의 최종 참조 프레임은 N-3이며, 주변 블록(80)의 최종 참조 프레임은 N-5라고 가정한다. 이 경우, N-1 프레임에서는 주변 블록(60)의 모션 벡터(61)만이 존재하고, N-3 프레임에서는 주변 블록(70)의 모션 벡터(72)만이 존재하며, N-5 프레임에서는 주변 블록(80)의 모션 벡터(81)만이 존재한다. 또한, N-2 프레임 및 N-4 프레임에서는 주변 블록의 모션 벡터가 존재하지 않는다.
실제로 현재 블록(50)의 최종 모션 벡터 및 최종 참조 프레임을 결정하기 위해서는, 각각의 참조 프레임 상에서 모션 추정을 수행하여 모션 벡터를 구하고, 이렇게 구한 모션 벡터 중에서 최적의 모션 벡터를 최종 모션 벡터로 결정한다(물론, 최종 모션 벡터가 결정된 프레임이 최종 참조 프레임이 된다). 이와 같이 각각의 참조 프레임 상에서의 모션 추정을 수행하기 위해서는 모션 탐색의 초기치의 선정이 중요한데, 초기치로 사용할 예측 모션 벡터를 구하기 위한 주변 블록의 모션 벡터(주변 모션 벡터)가 세 개 중에서 일부밖에 존재하지 않거나 아예 존재하지 않는 경우가 발생한다. 따라서, 종래의 비디오 코딩 표준에 따르면 상기 예측 모션 벡터를 정확하게 결정하는 것이 어렵다는 것을 알 수 있다.
따라서, 본 발명에서는 전술한 바와 같이, 각각의 참조 프레임이 소정 개수(예: 3개)의 주변 모션 벡터를 모두 갖도록 하여, 상기 예측 모션 벡터를 보다 정확하게 생성할 수 있도록 하는 것에 주안점이 있다. 이를 위해서는, 현재 존재하는 주변 모션 벡터들에 기초하여, 주변 모션 벡터가 존재하지 않는 참조 프레임에서 해당 주변 모션 벡터를 보간하는 과정이 필요하다.
상기 보간 과정은 다음과 같은 두 가지 방식에 의하여 이루어질 수 있다.
첫째, 상기 주변 블록의 모션 벡터의 참조 거리가, 상기 하나의 참조 프레임과 현재 블록 간의 간격보다 크거나 같은 경우에는, 상기 주변 블록의 모션 벡터에 상기 간격을 상기 참조 거리로 나눈 비율을 곱한 값으로 상기 주변 모션 벡터를 생성한다.
도 4에서, 주변 블록(80)의 모션 벡터(81)는 참조 거리(N-5에서 N 사이의 참조 거리)가 5이므로, 예를 들어, N-1 프레임에서의 주변 모션 벡터는 상기 모션 벡터(81)에 N-1 프레임과 현재 프레임(또는 현재 블록)(N) 간의 간격, 즉 1을 상기 참조 거리인 5로 나눈 비율을 상기 모션 벡터(81)에 곱한 값(즉, 모션 벡터(82)임)에 의하여 구해진다. 마찬가지로, N-2, N-3, N-4 프레임들에서의 주변 모션 벡터들도 마찬가지로 각각 모션 벡터(81)에 2/5, 3/5, 4/5를 곱한 값으로 구해진다.
둘째, 상기 주변 블록의 모션 벡터의 참조 거리가, 상기 하나의 참조 프레임과 현재 블록 간의 간격보다 작은 경우에는, 상기 주변 블록의 모션 벡터가 가리키는 위치를 연속적으로 추적(tracing)함에 의하여 상기 예측 모션 벡터를 생성한다.
도 4에서, 주변 블록(60)의 모션 벡터(61)은 참조 거리가 1이다. 따라서 N-2 내지 N-5 프레임들에서의 주변 모션 벡터들을 생성하기 위해서는 상기 연속적 추적 과정을 사용한다. 상기 연속적 추적 과정은 예를 들면, 모션 벡터(61)가 가리키는 N-1 프레임 상의 지점이 갖는 모션 벡터(63)에 의하여 N-3 프레임 상의 지점으로 이동하고, 상기 N-3 프레임 상의 지점이 갖는 모션 벡터(64)에 의하여 N-4 프레임 상의 지점이 갖는 지점으로 이동하며, 최종적으로 N-4 프레임 상의 지점이 갖는 모션 벡터(65)에 의하여 N-5 프레임 상의 지점으로 이동하는 것이다. 여기서 어떤 지점이 갖는 모션 벡터라 함은, 상기 지점을 포함하는 블록이 갖는 모션 벡터를 의미한다. 한편, N-2 프레임 상의 지점은 모션 벡터(63)의 1/2에 해당하는 지점이다. 이와 같이, 연속적인 추적을 이용하면 모든 참조 프레임들(N-1 내지 N-5) 상에서 주변 블록(60)에 대응되는 영역(주황색으로 표시되는 사각형 부분들)이 결정될 수 있다. 이와 같이 대응되는 영역들이 모두 결정되면 현재 프레임 N에서 상기 대응되는 영역들의 중심까지의 변위가 바로 해당 프레임에서의 주변 모션 벡터로 결정되는 것이다.
물론, 주변 블록(70)과 같이 두 가지 보간 방법이 동시에 사용될 수도 있다. 주변 블록(70)이 갖는 모션 벡터(72)는 N-3 프레임 상의 영역(73)을 가리킨다. 따라서, N-2 프레임 상의 주변 모션 벡터와 N-1 프레임 상의 주변 모션 벡터는 각각 모션 벡터(72)의 2/3 및 1/3로 각각 계산되고, 나머지 N-4 이상의 참조 프레임은 연속적 추적에 의하여 주변 모션 벡터를 계산할 수 있다.
요약하면, 도 4에서 주변블록들(60, 70 및 80)은 모든 참조 프레임들에서 대응되는 영역(대응되는 영역들은 같은 색상으로 표시됨)을 가지게 되고, 상기 주변블록과 상기 대응되는 영역 간의 변위가 바로 특정 참조 프레임에서 해당 주변블록에 관련된 주변 모션 벡터가 되는 것이다. 따라서, 이와 같은 보간 과정을 통하여 모든 참조 프레임 상에서 주변 모션 벡터들을 얻을 수 있게 된다.
따라서, 각각의 참조 프레임 상에서 현재 블록(50)에 대한 모션 추정을 수행할 때에는 해당 참조 프레임 상에서 3개의 주변 모션 벡터로부터 예측 모션 벡터를 얻을 수 있다. 즉, 각각의 참조 프레임 당 하나의 예측 모션 벡터를 얻을 수 있는 것이다. 이러한 예측 모션 벡터를 초기치로 하여 모션 추정을 수행하여 해당 참조 프레임에 대한 모션 벡터를 구한다. 이와 같이 모션 추정을 통해 구한 모션 벡터들 중에서 하나를 선택하여 최종 모션 벡터로서 삼게 된다. 물론, 최종 모션 벡터를 선택하는 기준으로는 SAD(sum of absolute difference)나 율왜곡 비용(rate-distortion cost) 등 공지된 방법들이 이용될 수 있을 것이다.
현재 블록(50)에 대하여 구한 최종 모션 벡터는 특정한 참조 프레임과 세트로서 구해진다. 예를 들어, N-1 프레임에서 구한 모션 벡터가 현재 블록(50)에 대하여 최적이라고 하면, 코딩되어야 하는 정보, 즉 모션 벡터 복호화 장치로 전송되어야 하는 정보는 상기 구한 최종 모션 벡터와 최종 참조 프레임(상기 N-1 프레임)의 번호이다.
이러한 최종 모션 벡터를 보다 효율적으로 압축하기 위해서는 비디오 인코더와 모션 벡터 복호화 장치에서 공통적으로 이용할 수 있는 정보로부터 보다 정확한 예측 모션 벡터를 구하여야 한다. 전술한 바와 같이, 본 발명은 모든 참조 프레임에 대하여 예측 모션 벡터를 이미 구해 놓았기 때문에, 최종 참조 프레임에 대한 예측 모션 벡터(즉, 최종 예측 모션 벡터)도 이미 알고 있는 정보에 속한다. 따라서, 상기 현재 블록(50)에 대한 최종 모션 벡터와 상기 최종 예측 모션 벡터간의 차이를 구하고 이 차이를 코딩함으로써 코딩 효율을 높일 수 있다. 이러한 코딩 효율은 상기 최종 모션 벡터와 상기 최종 예측 모션벡터 간의 차이가 작을수록 높아지는데, 본 발명에서는 종래 기술과 달리 모든 프레임에서 주변 모션 벡터를 결정하고, 결정된 주변 모션 벡터들로부터 예측 모션 벡터를 구하기 때문에, 상기 차이의 크기를 줄일 가능성이 높다.
도 5는 본 발명의 일 실시예에 따른 예측 모션 벡터를 이용한 모션 벡터 부호화 장치(100)의 구성을 도시한 블록도이다.
모션 벡터 부호화 장치(100)는 블록 분할부(110), 예측 모션 벡터 생성부(140), 모션 추정부(150), 차분기(195), 엔트로피 부호화부(190)를 포함하여 구성될 수 있으며, 비디오 텍스쳐 부호화 기능까지 구비하는 경우에는, 모션 보상부(160), 차분기(165), 공간적 변환부(170) 및 양자화부(180)를 더 포함할 수 있다.
블록 분할부(block divider; 110)는 입력 프레임을 모션 벡터의 할당 단위인 블록, 즉 매크로블록 또는 서브 매크로블록의 크기로 분할한다. 상기 매크로블록은 16x16의 픽셀 크기를 갖는 블록(16x16 블록)이고, 상기 서브 매크로블록은 그 보다 작은 크기의 블록이다. H.264에서 상기 서브 매크로블록에는 16x8 블록, 8x16 블록 및 8x8 블록이 존재하며, 상기 8x8 블록은 다시 8x4 블록, 4x8 블록 및 4x4 블록으로 나뉘어질 수 있다.
또는, HDTV 급 이상의 고화질 영상의 경우 입력 프레임 또는 입력 픽춰는 32x32, 64x64, 128x128 픽셀 크기의 코딩 유닛(coding unit)을 포함할 수 있다. 상기 코딩 유닛은 각 코딩 유닛(CU)은 정사각형 모양을 가지며, 각 코딩 유닛(CU)은 2N X 2N(단위 pixel) 크기의 가변적인 크기를 가질 수 있다. 인터 예측, 인트라 예측, 변환, 양자화 및 엔트로피 부호화는 코딩 유닛(CU) 단위로 이루어질 수 있다. 코딩 유닛(CU)은 최대 코딩 유닛(LCU), 최소 코딩 유닛(SCU)를 포함할 수 있으며, 최대 코딩 유닛(LCU), 최소 코딩 유닛(SCU)의 크기는 8이상의 크기를 가지는 2의 거듭제곱 값으로 나타낼 수 있다. 상기 코딩 유닛(CU)은 순환적인 트리 구조를 가질 수 있다.
순환적인 구조는 일련의 플래그(flag)를 통하여 표현될 수 있다. 예를들어, 계층 레벨(level) 또는 계층 깊이(depth)가 k인 코딩 유닛(CUk)의 플래그(flag)값이 0인 경우, 코딩 유닛(CUk)에 대한 코딩(coding)은 현재의 계층 레벨(level) 또는 계층 깊이(depth)에 대해 이루어지며, 플래그(flag)값이 1인 경우, 현재의 계층 레벨(level) 또는 계층 깊이(depth)가 k인 코딩 유닛(CUk)은 4개의 독립적인 코딩 유닛(CUk+1)으로 분할되며, 분할된 코딩 유닛(CUk+1)은 계층 레벨(level) 또는 계층 깊이(depth)가 k+1이 되며, 크기는 Nk+1 X Nk+1가 된다. 이 경우 코딩 유닛(CUk+1)은 코딩 유닛(CUk)의 서브 코딩 유닛으로 나타낼 수 있다. 코딩 유닛(CUk+1)의 계층 레벨(level) 또는 계층 깊이(depth)가 최대 허용 가능한 계층 레벨(level) 또는 계층 깊이(depth)에 도달할 때까지 코딩 유닛(CUk+1)은 순환적으로(recursive) 처리될 수 있다. 코딩 유닛(CUk+1)의 계층 레벨(level) 또는 계층 깊이(depth)가 최대 허용 가능한 계층 레벨(level) 또는 계층 깊이(depth)와 동일한 경우에는 더 이상의 분할은 허용되지 않는다.
최대 코딩 유닛(LCU)의 크기 및 최소 코딩 유닛(SCU)의 크기는 시퀀스 파라미터 셋(Sequence Parameter Set; SPS)에 포함될 수 있다. 시퀀스 파라미터 셋(SPS)는 최대 코딩 유닛(LCU)의 최대 허용 가능한 계층 레벨(level) 또는 계층 깊이(depth)를 포함할 수 있다. 예를 들어, 도 2의 경우는 최대 허용 가능한 계층 레벨(level) 또는 계층 깊이(depth)는 5이고, 최대 코딩 유닛(LCU)의 한변의 크기가 128(단위 pixel)인 경우, 128 X 128(LCU), 64 X 64, 32 X 32, 16 X 16 및 8 X 8(SCU)의 5가지 종류의 코딩 유닛 크기가 가능하다. 즉, 최대 코딩 유닛(LCU)의 크기 및 최대 허용 가능한 계층 레벨(level) 또는 계층 깊이(depth)가 주어지면 허용가능한 코딩 유닛의 크기가 결정될 수 있다.
상기와 같은 계층적인 분할 과정이 완료되면 더 이상의 분할 없이 코딩 유닛 계층 트리의 말단 노드에 대해 인터 예측 또는 인트라 예측을 수행할 수 있으며, 이러한 말단 코딩 유닛이 인터 예측 또는 인트라 예측의 기본 단위인 예측 유닛(Prediction Unit; PU)으로 사용된다.
인터 예측 또는 인트라 예측을 위하여 상기 말단 코딩 유닛에 대해 파티션(partition) 분할이 수행 될 수 있다. 즉, 파티션 분할은 예측 유닛(PU)에 대해 수행된다. 여기서, 에측 유닛(PU)는 인터 예측 또는 인트라 예측을 위한 기본 단위의 의미이며, 기존의 매크로 블록 단위 또는 서브-매크로 블록 단위가 될 수도 있고, 32 X 32 픽셀 크기 이상의 확장 매크로 블록 단위 또는 코딩 유닛 단위가 될 수도 있다.
상기 인터 예측 또는 인트라 예측을 위한 파티션 분할은 대칭적 파티션 분할(symmetric partitioning) 방식으로 이루어질 수도 있고, 비대칭적 파티션 분할(asymmetric partitioning) 방식으로 이루어질 수도 있다.
다시 도 5를 참조하면, 본 발명의 일 실시예에 있어서, 블록 분할부(110)는 모션 추정을 위한 대상으로서, 상기 H.264 표준에서와 같이 계층적 구조의 블록들로 분할 수도 있고, 고정된 크기의 블록(예: 16x16, 8x8, 4x4)들로 분할할 수도 있다. 이하, 본 명세서에서, 모션 추정, 즉 모션 벡터를 구할 대상이 되는 블록을 현재 블록으로, 상기 현재 블록이 속하는 프레임을 현재 프레임으로, 상기 현재 블록의 모션 추정에 있어서 참조되는 프레임을 참조 프레임으로 각각 정의하기로 한다.
예측 모션 벡터 생성부(140)는 복수의 참조 프레임들 각각에 대하여, 현재 블록에 대한 주변 모션 벡터들을 생성하고, 상기 생성된 주변 모션 벡터들로부터 상기 현재 블록에 대한 예측 모션 벡터를 생성한다. 특히, 예측 모션 벡터 생성부(140)는 상기 현재 블록의 주변 블록들의 모션 벡터들을 기초로 한 보간 과정에 의하여 얻어지는, 하나의 참조 프레임 상의 위치에서의 모션 벡터들을 상기 주변 모션 벡터들로 생성한다. 여기서, 상기 주변 블록들은 현재 블록의 좌측의 블록, 상측의 블록 및 우상측의 블록을 포함할 수 있으며, 상기 생성된 주변 모션 벡터들로부터 상기 현재 블록에 대한 예측 모션 벡터를 생성하는 것은 메디안 연산을 이용하는 것이 바람직하나, 평균값 연산 기타의 다른 연산을 사용할 수도 있음을 물론이다.
이러한 보간 과정은 도 4를 참조하여 예시한 바 있으나, 다시 정리하면 다음과 같다.
첫째, 상기 주변 블록의 모션 벡터의 참조 거리가, 상기 하나의 참조 프레임과 현재 블록 간의 간격보다 크거나 같은 경우에는, 상기 주변 블록의 모션 벡터에 상기 간격을 상기 참조 거리로 나눈 비율을 곱한 값으로 상기 주변 모션 벡터를 구할 수 있다.
둘째, 상기 주변 블록의 모션 벡터의 참조 거리가, 상기 하나의 참조 프레임과 현재 블록 간의 간격보다 작은 경우에는, 상기 주변 블록의 모션 벡터가 가리키는 위치를 연속적으로 추적함에 의하여 상기 주변 모션 벡터를 구할 수 있다. 즉, 특정 참조 프레임에서의 추적된 위치를 중심으로 한 영역과, 상기 주변 블록 간의 변위를 상기 주변 모션 벡터로 결정할 수 있다. 예를 들면, N-3 프레임에서 주변 블록(60)과 관련된 주변 모션 벡터는, N-3 프레임에서의 추적된 위치를 중심으로 한 영역(69)와, 상기 주변 블록(60)간의 변위로부터 구해진다.
결국, 예측 모션 벡터 생성부(140)는 각각의 참조 프레임들에 대 예측 모션 벡터(MVpred)를 모션 추정을 위한 탐색 초기치로서 모션 추정부(150)에 제공한다.
모션 추정부(150)는 상기 제공된 예측 모션 벡터를 탐색 초기치(24)로 하여 모션 추정을 수행한다. 구체적으로, 모션 추정부(150)는, 탐색 영역(도 2의 22) 내를 이동(픽셀 단위 또는 서브 픽셀 단위로)하면서 현재 블록과 가장 잘 매칭되는 참조 프레임상의 영역을 찾고, 상기 매칭이 발생하는 경우에 현재 블록과 상기 영역간의 변위를 상기 현재 블록의 모션 벡터(MV)로 결정한다. 상기 매칭의 판단기준으로는 현재 블록과 상기 영역간의 에러를 나타내는 SAD(sum of difference)나, 실제 코딩 결과까지 고려한 R-D 비용(rate-distortion cost)이 사용될 수 있다. 다만, 본원 발명의 경우 다중 프레임 참조를 기반으로 하므로, 결론적으로 모션 추정부(150)는 상기 복수의 참조 프레임들의 탐색 영역을 대상으로, 상기 현재 블록에 대한 최종 모션 벡터(MVf) 및 상기 최종 모션 벡터(MVf)에 대응되는 최종 참조 프레임 번호(Fr_No)를 결정하게 된다.
차분기(195)는 상기 현재 블록에 대한 최종 모션 벡터(MVf)와, 상기 예측 모션 벡터(MVp) 중에서 상기 결정된 최종 참조 프레임에 대응되는 최종 예측 모션 벡터(MVpf) 간의 차이를 구한다. 상기 모션 벡터 차이(motion vector difference; MVD)와 상기 최종 참조 프레임에 관한 정보(예: 프레임 번호, Fr-No)는 엔트로피 부호화부(190)에 의하여 무손실 부호화된다.
한편, 이상에서는 모션 벡터 압축 과정에 대하여 설명하였으나 모션 벡터 부호화 장치(100)는 추가적으로 비디오 텍스쳐를 부호화할 수도 있다. 이 경우 모션 보상부(160), 차분기(165), 공간적 변환부(170) 및 양자화부(180)를 더 포함한다.
모션 보상부(160)는 모션 추정부(150)로부터 제공되는, 블록들에 대한 모션 벡터들을 이용하여 참조 프레임에 대하여 모션 보상을 수행함으로써 모션 보상 프레임(motion compensated frame)을 얻는다.
또한, 차분기(165)는 상기 입력 프레임에서, 상기 모션 벡터에 의해 참조 프레임을 보상한 모션 보상 프레임을 차분하여 잔차 프레임(residual frame)을 얻는다.
상기 참조 프레임은 도 5에서는 도시하지 않았으나 모션 벡터 부호화 장치내의 프레임 메모리(미도시)에 저장될 수 있다.
공간적 변환부(170)는 소정의 공간적 변환법을 이용하여, 상기 잔차 프레임을 주파수 도메인으로 변환한다. 이러한 공간적 변환법으로는 주로 DCT(Discrete Cosine Transform)가 사용되며, 때로는 웨이브렛 변환(wavelet transform)이 사용되기도 한다. 공간적 변환 결과 구해지는 계수들을 변환 계수라고 하는데, 공간적 변환으로 DCT를 사용하는 경우 DCT 계수라고 하고, 웨이브렛 변환을 사용하는 경우 웨이브렛 계수라고 한다.
양자화부(180)는 공간적 변환부(170)에서 구한 변환 계수를 양자화한다. 양자화(quantization)란 임의의 실수 값으로 표현되는 상기 변환 계수를 일정 구간으로 나누어 불연속적인 값(discrete value)으로 나타내고, 이를 소정의 인덱스로 매칭(matching)시키는 과정을 의미한다. 특히, 공간적 변환 방법으로 웨이브렛 변환을 이용하는 경우에는 양자화 방법으로서 임베디드 양자화(embedded quantization)가 이용되기도 한다.
엔트로피 부호화부(190)는 전술한 모션 벡터 차이 및 참조 프레임 번호와 더불어, 상기 양자화부(180)에 의하여 양자화된 변환 계수를 무손실 부호화하여 출력 비트스트림을 생성한다. 이러한 무손실 부호화 방법으로는, 산술 부호화(arithmetic coding), 가변 길이 부호화(variable length coding), 허프만 부호화 등이 있다.
도 6은 본 발명의 일 실시예에 따른 모션 벡터 복호화 장치(500)의 구성을 도시한 블록도이다. 모션 벡터 복호화 장치(500)는 엔트로피 복호화부(510), 예측 모션 벡터 생성부(560) 및 가산기(565)를 포함한다. 모션 벡터 복호화 장치(500)가 비디오 텍스쳐의 복원 기능까지 포함하는 경우에는, 역 양자화부(520), 역 공간적 변환부(530), 모션 보상부(550) 및 가산기(515)를 더 포함할 수 있다.
엔트로피 복호화부(510)는 입력 비트스트림을 무손실 복호화하여, 현재 블록에 관한 모션 벡터 차이(MVD) 및 참조 프레임 번호(Fr_No)를 구한다.
예측 모션 벡터 생성부(560)는 상기 현재 블록의 주변 블록들이 갖는 모션 벡터를 이용하여, 상기 참조 프레임 번호(Fr_No)에 해당하는 참조 프레임 상에서, 상기 현재 블록에 대한 주변 모션 벡터들을 생성하고, 생성된 주변 모션 벡터들로부터 상기 현재 블록에 대한 예측 모션 벡터를 생성한다. 이와 같은 예측 모션 벡터의 생성 과정은 모션 벡터 부호화 장치(100)와 유사하지만, 모션 벡터 복호화 장치(500)의 경우에는 이미 참조 프레임 번호가 제공되어 있으므로 이에 대한 예측 모션 벡터만 생성하면 된다. 모션 벡터 부호화 장치(100)는 대상이 되는 참조 프레임들 전체의 각각에 대하여 예측 모션 벡터를 생성한 바 있다.
구체적으로, 상기 예측 모션 벡터 생성부(560)는 상기 현재 블록의 주변 블록들의 모션 벡터들을 기초로 한 보간 과정에 의하여 얻어지는, 상기 참조 프레임 상의 위치에서의 모션 벡터들을 상기 주변 모션 벡터들로 생성한다. 이러한 보간 과정은 도 4를 참조하여 예시한 바 있으나, 다시 정리하면 다음과 같다.
첫째, 상기 주변 블록의 모션 벡터의 참조 거리가, 상기 참조 프레임과 현재 블록 간의 간격보다 크거나 같은 경우에는, 상기 주변 블록의 모션 벡터에 상기 간격을 상기 참조 거리로 나눈 비율을 곱한 값으로 상기 주변 모션 벡터를 구한다.
둘째, 상기 주변 블록의 모션 벡터의 참조 거리가, 상기 참조 프레임과 현재 블록 간의 간격보다 작은 경우에는, 상기 주변 블록의 모션 벡터가 가리키는 위치를 연속적으로 추적함에 의하여 상기 주변 모션 벡터를 구한다. 구체적으로, 상기 주변 모션 벡터는 상기 하나의 참조 프레임에서의 추적된 위치를 중심으로 한 영역과, 상기 주변 블록 간의 변위에 의하여 구해진다.
가산기(565)는 상기 모션 벡터 차이와 상기 생성된 현재 블록에 대한 예측 모션 벡터를 가산하여 현재 블록에 관한 최종 모션 벡터를 복원한다. 이와 같이 구해진 최종 모션 벡터는 잔차 영상을 복원하는 데에 이용될 수 있는 것이다.
모션 벡터 복호화 장치(500)는 추가적으로 비디오 텍스쳐의 복원을 위해서는, 역 양자화부(520), 역 공간적 변환부(530), 모션 보상부(550) 및 가산기(515)를 더 포함할 수 있다.
상기 엔트로피 복호화부(510)는 상기 모션 벡터 차이 및 참조 프레임 번호와 더불어, 텍스쳐 데이터를 추출한다. 추출된 텍스쳐 데이터는 역 양자화부(520)에 제공된다.
역 양자화부(520)는 엔트로피 복호화부(510)로부터 전달된 텍스쳐 데이터를 역 양자화한다. 역 양자화 과정은 인코더(100) 단에서 소정의 인덱스로 표현하여 전달한 값으로부터 이와 매칭되는 양자화된 계수를 찾는 과정이다. 인덱스와 양자화 계수 간의 매칭(matching) 관계를 나타내는 테이블은 인코더(100) 단으로부터 전달될 수도 있고, 미리 인코더와 디코더 간의 약속에 의한 것일 수도 있다.
역 공간적 변환부(530)는 공간적 변환을 역으로 수행하여, 상기 역 양자화 결과 생성된 계수들(주파수 영역)을 공간적 영역에서의 잔차 블록으로 변환한다. 예를 들어, 비디오 인코더 단에서 웨이브렛 방식으로 공간적 변환된 경우에는 역 공간적 변환부(530)는 역 웨이브렛 변환을 수행할 것이고, 비디오 인코더 단에서 DCT 방식으로 공간적 변환된 경우에는 역 DCT 변환을 수행할 것이다.
모션 보상부(550)는 가산기(565)로부터 제공되는 최종 모션 벡터를 이용하여 이미 복원된 프레임(Fr)을 모션 보상하여 모션 보상 프레임을 생성한다.
가산기(515)는 역 공간적 변환부(530)에서 복원되는 잔차 블록과 모션 보상부(550)로부터 제공되는 모션 보상된 프레임에서의 대응 영상을 가산하여 현재 블록을 복원한다. 이와 같이 복원된 현재 블록들의 총합은 하나의 복원된 프레임을 형성할 수 있다.
본 발명의 다른 실시예에 따른 다중 참조를 허용하는 비디오 코딩 방식에서의 모션 벡터 복호화 방법에 따르면, 먼저, 입력 비트스트림을 무손실 복호화하여 현재 블록에 관한 모션 벡터 차이를 생성하고, 상기 현재 블록의 주변 블록들이 갖는 모션 벡터를 이용하여 상기 현재 블록에 대한 예측 모션 벡터를 생성하며, 상기 모션 벡터 차이와 상기 생성된 현재 블록에 대한 예측 모션 벡터를 이용하여 원래 영상을 복원한다.
전술한 본 발명의 다른 실시예에 따른 모션 벡터 복호화 방법에 따르면, 다중 참조를 허용하는 비디오 코딩 방식에서, 도 3의 이미 모션 벡터가 결정된 블록들 부호화된 주변 블록들- 좌측 블록(Left), 상측 블록(Upper) 및 우상측 블록(UpperRight)-의 모션 벡터가 서로 다른 참조 픽취(또는 프레임)를 지시할 경우 상기 주변 블록들의 모션 벡터와 상기 현재 픽취로부터의 거리에 따라 상기 주변 블록들의 모션 벡터를 정규화(normalization)시킨 후 예측 모션 벡터를 구할 수 있다. 즉, 상기 예측 모션 벡터는 상기 정규화된 주변 블록들의 모션 벡터를 이용하여 구할 수 있다. 구체적으로 상기 예측 모션 벡터는 상기 정규화된 주변 블록들에 대해 메디안 연산을 통하여 구할 수 있다.
여기서, 각각의 주변 블록의 모션 벡터는 현재 픽춰(또는 프레임)으로부터의 현재블록의 거리(distance)를 상기 주변 블록의 현재 픽춰로부터의 거리로 나누어줌으써 정규화될 수 있다. 상기 정규화는 P 픽춰 및 B 픽춰에 대해 적용될 수 있다.
여기서, 상기 주변 블록들은 정사각형의 대칭적인 파티션(symmetric partition)으로 이루어질 수 있다. 또는 상기 주변 블록들은 정사각형의 비대칭적인 파티션(asymmetric partition)으로도 이루어질 수 있다. 상기 비대칭 파티션의 예로는 직사각형 형태가 될 수 있다.
본 발명의 다른 실시예에 따른 다중 참조를 허용하는 비디오 코딩 방식에서의 모션 벡터 복호화 방법에 따르면, 상기 현재 블록의 주변 블록들이 갖는 모션 벡터를 이용하여 상기 현재 블록에 대한 예측 모션 벡터를 생성하는 단계는 상기 현재 블록의 주변 블록들이 갖는 모션 벡터를 이용하여 상기 현재 블록에 대한 주변 모션 벡터들을 생성하는 단계와, 상기 생성된 주변 모션 벡터들로부터 상기 현재 블록에 대한 예측 모션 벡터를 생성하는 단계를 포함할 수 있다.
또한, 상기 입력 비트스트림을 무손실 복호화하여 현재 블록에 관한 모션 벡터 차이를 생성하는 단계는 상기 입력 비트스트림을 무손실 복호화하여 현재 블록에 관한 참조 픽처 번호를 구하는 단계를 더 포함할 수 있다. 상기 현재 블록의 주변 블록들이 갖는 모션 벡터를 이용하여 상기 현재 블록에 대한 주변 모션 벡터들을 생성하는 단계는 상기 현재 블록의 주변 블록들이 갖는 모션 벡터를 이용하여 상기 참조 픽춰 번호에 해당하는 참조 픽춰 상에서 상기 현재 블록에 대한 주변 모션 벡터들을 생성하는 단계를 포함할 수 있다.
*상기 현재 블록의 주변 블록들이 갖는 모션 벡터를 이용하여 상기 참조 픽춰 번호에 해당하는 참조 픽춰 상에서 상기 현재 블록에 대한 주변 모션 벡터들을 생성하는 단계는 상기 현재 블록의 주변 블록들-여기서, 상기 주변블록들은 상기 현재 블록의 좌측의 블록, 상측의 블록 및 우상측의 블록을 포함함-의 모션 벡터들을 기초로 한 보간 과정에 의하여 얻어지는, 상기 참조 픽춰 상의 위치에서의 모션 벡터들을 상기 주변 모션 벡터들로 생성하는 단계를 포함할 수 있다.
상기 보간 과정은 상기 주변 블록의 모션 벡터의 참조 거리가, 상기 참조 픽춰와 현재 블록 간의 간격보다 크거나 같은 경우에는, 상기 주변 블록의 모션 벡터에 상기 간격을 상기 참조 거리로 나눈 비율을 곱한 값으로 상기 주변 모션 벡터를 구할 수 있다.
상기 보간 과정은 상기 주변 블록의 모션 벡터의 참조 거리가, 상기 참조 픽춰와 현재 블록 간의 간격보다 작은 경우에는, 상기 주변 블록의 모션 벡터가 가리키는 위치를 연속적으로 추적함에 의하여 상기 주변 모션 벡터를 구할 수 있다. 상기 주변 모션 벡터는 상기 하나의 참조 픽춰에서의 추적된 위치를 중심으로 한 영역과, 상기 주변 블록 간의 변위에 의하여 구해질 수 있다.
상기 모션 벡터 차이와 상기 생성된 현재 블록에 대한 예측 모션 벡터를 이용하여 원래 영상을 복원하는 단계는 상기 모션 벡터 차이와 상기 생성된 현재 블록에 대한 예측 모션 벡터를 가산하여 원래 영상을 복원하는 단계를 포함할 수 있다.
상기 생성된 주변 모션 벡터들로부터 상기 현재 블록에 대한 상기 예측 모션 벡터를 생성하는 것은 메디안 연산에 의하여 수행될 수 있다.
지금까지 도 5 및 6의 각 구성요소는 소프트웨어(software) 또는, FPGA(field-programmable gate array)나 ASIC(application-specific integrated circuit)과 같은 하드웨어(hardware)를 의미할 수 있다. 그렇지만 상기 구성요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성요소들 안에서 제공되는 기능은 더 세분화된 구성요소에 의하여 구현될 수 있으며, 복수의 구성요소들을 합하여 특정한 기능을 수행하는 하나의 구성요소로 구현할 수도 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야 한다.
100: 모션 벡터 부호화 장치 110: 블록 분할부
140: 예측 모션 벡터 생성부 150: 모션 추정부
160: 모션 보상부 165, 195: 차분기
170: 공간적 변환부 180: 양자화부
190: 엔트로피 부호화부 500: 모션 벡터 복호화 장치
510: 엔트로피 복호화부 515, 565: 가산기
520: 역 양자화부 530: 역 공간적 변환부
550: 모션 보상부

Claims (12)

  1. 부호화 장치의 부호화 방법에 있어서,
    픽처를 순환적인(recursive) 트리 구조의 복수의 코딩 유닛으로 분할하는 단계; 및
    상기 순환적인 트리 구조의 말단 코딩 유닛을 복수의 예측 유닛으로 파티션 분할하는 단계를 포함하고,
    상기 말단 코딩 유닛은 더 이상 코딩 유닛들로의 분할이 없는 유닛이고,
    상기 순환적인 트리 구조는 플래그를 통해 표현되고,
    상기 플래그는 깊이 k의 코딩 유닛이 깊이 k+1의 4개의 코딩 유닛으로 분할되는지 여부를 나타내고,
    상기 플래그의 값 1은 깊이 k의 코딩 유닛이 깊이 k+1의 4개의 코딩 유닛으로 분할되는 것을 나타내고,
    상기 플래그의 값 0은 깊이 k의 코딩 유닛이 더 이상 분할이 없는 말단 코딩 유닛임을 나타내는
    부호화 방법.
  2. 제1항에 있어서,
    최소 코딩 유닛 크기에 대한 정보는 시퀀스 파라미터 셋에 포함되는
    부호화 방법.
  3. 제2항에 있어서,
    상기 시퀀스 파라미터 셋은 최대 코딩 유닛 크기에 대한 정보를 더 포함하는
    부호화 방법.
  4. 제2항에 있어서,
    최소 코딩 유닛 크기는 8 이상을 나타내는
    부호화 방법.
  5. 제1항에 있어서,
    인트라 예측을 위하여 상기 말단 코딩 유닛은 상기 복수의 예측 유닛으로 대칭적으로 파티션 분할되고,
    인터 예측을 위하여 상기 말단 코딩 유닛은 상기 복수의 예측 유닛으로 비대칭적으로 파티션 분할되는
    부호화 방법.
  6. 제1항에 있어서,
    상기 복수의 예측 유닛 중 제1 예측 유닛을 위한 모션 벡터를 생성하는 단계;
    상기 제1 예측 유닛을 위한 예측 모션 벡터를 생성하는 단계;
    상기 제1 예측 유닛을 위한 모션 벡터와 상기 제1 예측 유닛을 위한 예측 모션 벡터 사이의 차이를 부호화하는 단계를 더 포함하는
    부호화 방법.
  7. 복호화 장치의 복호화 방법에 있어서,
    복수의 코딩 유닛을 포함하는 순환적인(recursive) 트리 구조로부터 말단 코딩 유닛을 획득하는 단계; 및
    상기 말단 코딩 유닛으로부터 예측 유닛을 획득하는 단계를 포함하고,
    상기 말단 코딩 유닛은 더 이상 코딩 유닛들로의 분할이 없는 유닛이고,
    상기 순환적인 트리 구조는 플래그를 통해 표현되고,
    상기 플래그는 깊이 k의 코딩 유닛이 깊이 k+1의 4개의 코딩 유닛으로 분할되는지 여부를 나타내고,
    상기 플래그의 값 1은 깊이 k의 코딩 유닛이 깊이 k+1의 4개의 코딩 유닛으로 분할되는 것을 나타내고,
    상기 플래그의 값 0은 깊이 k의 코딩 유닛이 더 이상 분할이 없는 말단 코딩 유닛임을 나타내는
    복호화 방법.
  8. 제7항에 있어서,
    최소 코딩 유닛 크기에 대한 정보는 시퀀스 파라미터 셋에 포함되는
    복호화 방법.
  9. 제8항에 있어서,
    상기 시퀀스 파라미터 셋은 최대 코딩 유닛 크기에 대한 정보를 더 포함하는
    복호화 방법.
  10. 제8항에 있어서,
    최소 코딩 유닛 크기는 8 이상을 나타내는
    복호화 방법.
  11. 제7항에 있어서,
    상기 예측 유닛은 인트라 예측을 위하여 대칭적으로 파티션 분할된 유닛이고,
    상기 예측 유닛은 인터 예측을 위하여 비대칭적으로 파티션 분할된 유닛인
    복호화 방법.
  12. 제7항에 있어서,
    입력 비트스트림으로부터 상기 예측 유닛을 위한 모션 벡터 차분을 획득하는 단계;
    상기 예측 유닛을 위한 예측 모션 벡터를 생성하는 단계;
    상기 예측 모션 벡터와 상기 모션 벡터 차분을 가산하여 상기 예측 유닛을 위한 모션 벡터를 생성하는 단계를 더 포함하는
    복호화 방법.
KR1020150081936A 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치 KR101722234B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20100049315 2010-05-26
KR1020100049315 2010-05-26

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020140029149A Division KR101651322B1 (ko) 2010-05-26 2014-03-12 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치

Publications (2)

Publication Number Publication Date
KR20150073904A true KR20150073904A (ko) 2015-07-01
KR101722234B1 KR101722234B1 (ko) 2017-03-31

Family

ID=45022116

Family Applications (15)

Application Number Title Priority Date Filing Date
KR1020100139029A KR101388469B1 (ko) 2010-05-26 2010-12-30 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020140029149A KR101651322B1 (ko) 2010-05-26 2014-03-12 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020140112652A KR101543171B1 (ko) 2010-05-26 2014-08-27 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020140112648A KR101539179B1 (ko) 2010-05-26 2014-08-27 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020140112641A KR101539178B1 (ko) 2010-05-26 2014-08-27 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020150081934A KR101722736B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020150081935A KR101722737B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020150081936A KR101722234B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020150081937A KR101722738B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020150081938A KR101761136B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020170039432A KR101834220B1 (ko) 2010-05-26 2017-03-28 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020180006447A KR101932735B1 (ko) 2010-05-26 2018-01-18 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020180040119A KR102032268B1 (ko) 2010-05-26 2018-04-06 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020180040121A KR102026856B1 (ko) 2010-05-26 2018-04-06 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020180040120A KR102026855B1 (ko) 2010-05-26 2018-04-06 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치

Family Applications Before (7)

Application Number Title Priority Date Filing Date
KR1020100139029A KR101388469B1 (ko) 2010-05-26 2010-12-30 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020140029149A KR101651322B1 (ko) 2010-05-26 2014-03-12 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020140112652A KR101543171B1 (ko) 2010-05-26 2014-08-27 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020140112648A KR101539179B1 (ko) 2010-05-26 2014-08-27 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020140112641A KR101539178B1 (ko) 2010-05-26 2014-08-27 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020150081934A KR101722736B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020150081935A KR101722737B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치

Family Applications After (7)

Application Number Title Priority Date Filing Date
KR1020150081937A KR101722738B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020150081938A KR101761136B1 (ko) 2010-05-26 2015-06-10 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020170039432A KR101834220B1 (ko) 2010-05-26 2017-03-28 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020180006447A KR101932735B1 (ko) 2010-05-26 2018-01-18 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020180040119A KR102032268B1 (ko) 2010-05-26 2018-04-06 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020180040121A KR102026856B1 (ko) 2010-05-26 2018-04-06 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR1020180040120A KR102026855B1 (ko) 2010-05-26 2018-04-06 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치

Country Status (2)

Country Link
US (7) US8855205B2 (ko)
KR (15) KR101388469B1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9467705B2 (en) 2009-12-30 2016-10-11 Ariscale Inc. Video encoding apparatus, video decoding apparatus, and video decoding method for performing intra-prediction based on directionality of neighboring block
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
KR20120090740A (ko) * 2011-02-07 2012-08-17 (주)휴맥스 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법
US9094689B2 (en) 2011-07-01 2015-07-28 Google Technology Holdings LLC Motion vector prediction design simplification
CN104041041B (zh) 2011-11-04 2017-09-01 谷歌技术控股有限责任公司 用于非均匀运动向量栅格的运动向量缩放
KR20130050403A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 복원 블록 생성 방법
CN103150542A (zh) * 2011-12-06 2013-06-12 联咏科技股份有限公司 在动态图像中搜寻移动小物体的方法
US20130208795A1 (en) * 2012-02-09 2013-08-15 Google Inc. Encoding motion vectors for video compression
US8908767B1 (en) 2012-02-09 2014-12-09 Google Inc. Temporal motion vector prediction
KR101682999B1 (ko) * 2012-04-16 2016-12-20 노키아 테크놀로지스 오와이 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
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
WO2014003367A1 (ko) * 2012-06-26 2014-01-03 엘지전자 주식회사 영상 복호화 방법 및 이를 이용하는 장치
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
JP2015534416A (ja) * 2012-11-07 2015-11-26 エルジー エレクトロニクス インコーポレイティド ビデオ信号処理方法及び装置
CN105409215B (zh) * 2013-01-11 2018-10-09 华为技术有限公司 深度预测模式选择方法及装置
US9313493B1 (en) 2013-06-27 2016-04-12 Google Inc. Advanced motion estimation
KR101748620B1 (ko) * 2014-06-20 2017-07-04 성균관대학교산학협력단 영상의 부호화/복호화 방법 및 이를 이용하는 장치
WO2015194913A1 (ko) * 2014-06-20 2015-12-23 성균관대학교 산학협력단 영상의 부호화/복호화 방법 및 이를 이용하는 장치
KR20170096088A (ko) * 2016-02-15 2017-08-23 삼성전자주식회사 영상처리장치, 영상처리방법 및 이를 기록한 기록매체
US10390071B2 (en) * 2016-04-16 2019-08-20 Ittiam Systems (P) Ltd. Content delivery edge storage optimized media delivery to adaptive bitrate (ABR) streaming clients
CN107872671B (zh) * 2016-09-26 2022-01-14 华为技术有限公司 一种图片编码方法及终端
CN108089152B (zh) * 2016-11-23 2020-07-03 杭州海康威视数字技术股份有限公司 一种设备控制方法、装置及系统
CN108134939B (zh) * 2016-12-01 2020-08-07 北京金山云网络技术有限公司 一种运动估计方法及装置
US11042994B2 (en) * 2017-11-15 2021-06-22 Toyota Research Institute, Inc. Systems and methods for gaze tracking from arbitrary viewpoints
CN110351566B (zh) * 2018-04-02 2022-02-11 浙江大学 一种参考运动信息排序方法及装置
AU2018423422B2 (en) * 2018-05-16 2023-02-02 Huawei Technologies Co., Ltd. Video coding method and apparatus
CN108965873B (zh) * 2018-07-24 2020-02-14 北京大学 一种脉冲阵列编码的自适应划分方法
CN109819251B (zh) * 2019-01-10 2020-07-10 北京大学 一种脉冲阵列信号的编解码方法
CN113767638A (zh) * 2019-04-28 2021-12-07 北京字节跳动网络技术有限公司 对称运动矢量差编解码
CN111988629B (zh) * 2019-05-22 2024-02-09 富士通株式会社 图像编码装置和图像解码装置
CN114128292A (zh) * 2019-07-01 2022-03-01 三星电子株式会社 用邻近运动信息对运动信息进行编码和解码的装置和方法
USD990624S1 (en) * 2021-01-21 2023-06-27 Globe Union Industrial Corp. Faucet

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010002214A2 (ko) * 2008-07-02 2010-01-07 삼성전자 주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003077567A1 (en) * 2002-03-14 2003-09-18 Matsushita Electric Industrial Co., Ltd. Motion vector detection method
ES2644005T3 (es) * 2002-04-19 2017-11-27 Panasonic Intellectual Property Corporation Of America Procedimiento de cálculo de vectores de movimiento
JP2004023458A (ja) * 2002-06-17 2004-01-22 Toshiba Corp 動画像符号化/復号化方法及び装置
US7502743B2 (en) * 2002-09-04 2009-03-10 Microsoft Corporation Multi-channel audio encoding and decoding with multi-channel transform selection
US20040081238A1 (en) * 2002-10-25 2004-04-29 Manindra Parhy Asymmetric block shape modes for motion estimation
JP2005006275A (ja) * 2002-11-22 2005-01-06 Matsushita Electric Ind Co Ltd 補間フレーム作成装置、補間フレーム作成方法、および補間フレーム作成プログラム
EP1422928A3 (en) * 2002-11-22 2009-03-11 Panasonic Corporation Motion compensated interpolation of digital video signals
KR20050081730A (ko) * 2004-02-16 2005-08-19 엘지전자 주식회사 움직임 보상 기반의 영상 신호 프레임율 변환 방법
KR100955161B1 (ko) * 2004-05-04 2010-04-28 콸콤 인코포레이티드 모션 보상된 프레임 레이트 상향 변환을 위한 방법 및 장치
US9253493B2 (en) * 2004-08-31 2016-02-02 Thomson Licensing Fast motion estimation for multiple reference pictures
KR100750145B1 (ko) 2005-12-12 2007-08-21 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
US7693219B2 (en) * 2006-01-04 2010-04-06 Freescale Semiconductor, Inc. System and method for fast motion estimation
WO2008016609A2 (en) * 2006-08-02 2008-02-07 Thomson Licensing Adaptive geometric partitioning for video encoding
EP2055108B1 (en) * 2006-08-25 2011-04-20 Thomson Licensing Methods and apparatus for reduced resolution partitioning
KR101365567B1 (ko) * 2007-01-04 2014-02-20 삼성전자주식회사 영상의 예측 부호화 방법 및 장치, 그 복호화 방법 및 장치
EP2090113A4 (en) * 2006-11-07 2014-08-20 Samsung Electronics Co Ltd METHOD AND DEVICE FOR VIDEO CODING AND DECODING BASED ON MOTION ESTIMATION
KR101369746B1 (ko) * 2007-01-22 2014-03-07 삼성전자주식회사 적응적 보간 필터를 이용한 영상 부호화, 복호화 방법 및장치
US20080240242A1 (en) * 2007-03-27 2008-10-02 Nokia Corporation Method and system for motion vector predictions
KR101403343B1 (ko) * 2007-10-04 2014-06-09 삼성전자주식회사 부화소 움직임 추정을 이용한 인터 예측 부호화, 복호화방법 및 장치
KR100949917B1 (ko) 2008-05-28 2010-03-30 한국산업기술대학교산학협력단 적응적 인트라 예측을 통한 고속 부호화 방법 및 시스템
KR101377527B1 (ko) 2008-10-14 2014-03-25 에스케이 텔레콤주식회사 복수 개의 참조 픽처의 움직임 벡터 부호화/복호화 방법 및장치와 그를 이용한 영상 부호화/복호화 장치 및 방법
WO2010090484A2 (ko) * 2009-02-09 2010-08-12 삼성전자 주식회사 저복잡도 주파수 변환을 이용한 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치
US8917769B2 (en) * 2009-07-03 2014-12-23 Intel Corporation Methods and systems to estimate motion based on reconstructed reference frames at a video decoder
US9654792B2 (en) * 2009-07-03 2017-05-16 Intel Corporation Methods and systems for motion vector derivation at a video decoder
US8462852B2 (en) * 2009-10-20 2013-06-11 Intel Corporation Methods and apparatus for adaptively choosing a search range for motion estimation
US20110013853A1 (en) * 2009-07-17 2011-01-20 Himax Technologies Limited Approach for determining motion vector in frame rate up conversion
US9467705B2 (en) 2009-12-30 2016-10-11 Ariscale Inc. Video encoding apparatus, video decoding apparatus, and video decoding method for performing intra-prediction based on directionality of neighboring block
US20110194613A1 (en) * 2010-02-11 2011-08-11 Qualcomm Incorporated Video coding with large macroblocks
US8077064B2 (en) * 2010-02-26 2011-12-13 Research In Motion Limited Method and device for buffer-based interleaved encoding of an input sequence
KR101752418B1 (ko) * 2010-04-09 2017-06-29 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010002214A2 (ko) * 2008-07-02 2010-01-07 삼성전자 주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
H.264 and MPEG-4 Video Compression, WILEY(2003.12.31.)* *

Also Published As

Publication number Publication date
US20170374378A1 (en) 2017-12-28
KR20140126278A (ko) 2014-10-30
KR101651322B1 (ko) 2016-08-25
US9344738B2 (en) 2016-05-17
KR101932735B1 (ko) 2018-12-26
KR102032268B1 (ko) 2019-10-15
US9344741B2 (en) 2016-05-17
KR101539179B1 (ko) 2015-07-24
KR20150073903A (ko) 2015-07-01
US20150189309A1 (en) 2015-07-02
US9344740B2 (en) 2016-05-17
US20140254685A1 (en) 2014-09-11
US20150189310A1 (en) 2015-07-02
KR20150073902A (ko) 2015-07-01
KR20180039598A (ko) 2018-04-18
KR101543171B1 (ko) 2015-08-07
KR102026855B1 (ko) 2019-09-30
KR20110129805A (ko) 2011-12-02
KR101722738B1 (ko) 2017-04-03
KR20180039600A (ko) 2018-04-18
KR101388469B1 (ko) 2014-04-25
US20150189308A1 (en) 2015-07-02
KR20140126277A (ko) 2014-10-30
KR101722736B1 (ko) 2017-04-03
KR101722737B1 (ko) 2017-04-03
KR20180014105A (ko) 2018-02-07
KR20140053053A (ko) 2014-05-07
KR101539178B1 (ko) 2015-07-24
KR101834220B1 (ko) 2018-03-05
US20110293010A1 (en) 2011-12-01
US20150189307A1 (en) 2015-07-02
US10142649B2 (en) 2018-11-27
US9344739B2 (en) 2016-05-17
KR20140126276A (ko) 2014-10-30
US9781441B2 (en) 2017-10-03
KR101761136B1 (ko) 2017-07-25
US8855205B2 (en) 2014-10-07
KR101722234B1 (ko) 2017-03-31
KR20150073906A (ko) 2015-07-01
KR102026856B1 (ko) 2019-09-30
KR20170038774A (ko) 2017-04-07
KR20180039599A (ko) 2018-04-18
KR20150073905A (ko) 2015-07-01

Similar Documents

Publication Publication Date Title
KR101932735B1 (ko) 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR101543200B1 (ko) 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR101610028B1 (ko) 고속 모션 추정 방법 및 장치, 이를 이용한 비디오 인코딩 장치
KR101610029B1 (ko) 가변 크기 블록 매칭 기반의 모션 추정 방법 및 이를 이용한 비디오 인코딩 장치
KR101505815B1 (ko) 서브 픽셀 정밀도를 갖는 모션 추정 방법 및 장치, 이를 이용한 비디오 인코더

Legal Events

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

Payment date: 20200225

Year of fee payment: 4