KR20120088628A - Method and Apparatus for prediction of adaptive motion vector in multi-viewpoint image - Google Patents
Method and Apparatus for prediction of adaptive motion vector in multi-viewpoint image Download PDFInfo
- Publication number
- KR20120088628A KR20120088628A KR1020120068178A KR20120068178A KR20120088628A KR 20120088628 A KR20120088628 A KR 20120088628A KR 1020120068178 A KR1020120068178 A KR 1020120068178A KR 20120068178 A KR20120068178 A KR 20120068178A KR 20120088628 A KR20120088628 A KR 20120088628A
- Authority
- KR
- South Korea
- Prior art keywords
- motion vector
- block
- current block
- detected
- value
- 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/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 서로 다른 시점(viewpoint)을 가지는 복수의 카메라가 각기 촬영한 다시점(multi-viewpoint) 동영상 데이터에서 적응적 움직임 벡터 예측 장치 및 방법에 관한 것으로, 보다 상세히 소정 크기의 블록에 대한 움직임 벡터예측 수행 시, 이미 부호화 및 복호화가 끝난 주위 3개 블록을 기초로 적응적으로 움직임 벡터를 예측함으로써 압축률을 높이는 방법 및 그 장치에 관한 것이다.The present invention relates to an apparatus and method for adaptive motion vector prediction in multi-viewpoint video data captured by a plurality of cameras having different viewpoints, and more particularly, to a motion vector for a block having a predetermined size. The present invention relates to a method and apparatus for increasing the compression ratio by adaptively predicting a motion vector based on three neighboring blocks already encoded and decoded.
현재, 동영상 데이터를 부호화하기 위해 사용되는 H.264 표준에 따르면 하나의 프레임을 소정 크기의 블록으로 나누어 이미 부호화가 끝난 인접한 프레임을 참조하여 가장 유사한 블록을 검색하는 움직임 검색을 수행한다.Currently, according to the H.264 standard used for encoding video data, one frame is divided into blocks having a predetermined size, and a motion search is performed to search for the most similar block by referring to an adjacent frame that has already been encoded.
그러나, 주위 블록의 참조 프레임이 현재 참조 프레임과 모두 다른 경우 또는, 두 개의 블록의 참조 프레임이 현재 참조 프레임과 같은 경우에도 중간값 예측을 하여 그 값을 현재 블록의 움직임 벡터 예측 값으로 사용하는 것은 높은 압축률을 얻는데 부적합할 수 있다.However, even when the reference frames of the neighboring blocks are all different from the current reference frame, or even when the reference frames of the two blocks are the same as the current reference frame, the median prediction is used to use the value as the motion vector prediction value of the current block. It may be unsuitable for obtaining high compression rates.
상기와 같은 부적합한 점을 해결하기 위하여, 본 발명은 현재 블록의 움직임 벡터값 예측에 있어 인접 블록이 참조하는 공간 프레임과 시간 프레임에 따라 움직임 벡터 예측 방법을 적응적으로 사용하여 압축률을 높이는 다시점 동영상에서 적응적 움직임 벡터 예측 방법 및 장치에 관한 것이다. In order to solve the above inconsistency, the present invention provides a multi-view video that increases the compression rate by adaptively using the motion vector prediction method according to the spatial frame and the temporal frame referenced by the neighboring block in predicting the motion vector value of the current block. The present invention relates to a method and apparatus for adaptive motion vector prediction.
본 발명의 바람직한 일 실시예에서, 다시점 영상에서 적응적 움직임 벡터 예측 장치는 현재 블록의 인접 블록 중 상기 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 블록만을 검출하는 블록 검출부; 및 상기 블록 검출부에서 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 적응적 예측부;를 포함한다. In one preferred embodiment of the present invention, the adaptive motion vector prediction apparatus in a multiview image comprises: a block detector which detects only blocks that refer to the same block as the block to which the current block refers temporally or spatially among adjacent blocks of the current block; And an adaptive predictor for obtaining a predicted motion vector value of the current block based on the motion vector of the block detected by the block detector.
본 발명의 바람직한 일 실시예의 적응적 예측부에서 상기 검출된 블록의 수가 하나인 경우 상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 움직임 벡터값이다.In the adaptive predicting unit of the present invention, when the number of detected blocks is one, the predicted motion vector value of the current block is a motion vector value of the detected block.
본 발명의 바람직한 일 실시예의 적응적 예측부에서 상기 검출된 블록의 수가 두 개인 경우 상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록들의 움직임 벡터의 평균값이다. In the adaptive prediction unit of the preferred embodiment of the present invention, when the number of detected blocks is two, the predicted motion vector value of the current block is an average value of the motion vectors of the detected blocks.
본 발명의 바람직한 일 실시예의 적응적 예측부에서 상기 검출된 블록의 수가 세 개인 경우 상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록들의 움직임 벡터의 중간값이다. In the adaptive prediction unit of the preferred embodiment of the present invention, when the number of detected blocks is three, the predicted motion vector value of the current block is an intermediate value of the motion vectors of the detected blocks.
본 발명의 바람직한 일 실시예의 적응적 예측부에서 블록이 검출되지 않은 경우 상기 현재 블록의 예측 움직임 벡터값은 (0,0) 이다. When a block is not detected by the adaptive predictor of the present invention, the predicted motion vector value of the current block is (0,0).
본 발명의 바람직한 일 실시예에서 움직임 벡터는 H.264 표준에 기초하여 추정된다. In one preferred embodiment of the invention the motion vector is estimated based on the H.264 standard.
본 발명의 또 다른 바람직한 일 실시예에서, 적응적 움직임 벡터 예측 인코더는 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 인접 블록을 검출하고 상기 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 움직임 벡터 예측부; 상기 현재 블록의 움직임 벡터값에서 상기 움직임 벡터 예측부에서 구한 현재 블록의 예측 움직임 벡터값의 차분을 부호화하는 엔트로피 부호화부;를 포함한다. In another preferred embodiment of the present invention, the adaptive motion vector prediction encoder detects an adjacent block that refers to the same block as the block that the current block refers to temporally or spatially and based on the detected motion vector of the block. A motion vector predictor for obtaining a predicted motion vector value of the current block; And an entropy encoder that encodes a difference between the predicted motion vector value of the current block obtained by the motion vector predictor from the motion vector value of the current block.
본 발명의 또 다른 바람직한 일 실시예에서 인코딩된 다시점 동영상 비트 스트림의 블락들을 적응적 움직임 벡터 예측방법을 이용하여 디코딩하는 디코더는 소정 블록의 움직임 벡터값에서 상기 소정 블록의 예측 움직임 벡터값을 차분한 움직임 벡터 차분값, 움직임 벡터 정보를 포함하는 다시점 동영상 비트스트림을 수신하는 수신부; 상기 수신된 비트 스트림 내의 블락들을 상기 움직임 벡터 정보 및 상기 움직임 벡터 차분값을 이용하여 복호화하는 엔트로피 디코딩부; 상기 복호화된 비트 스트림 내의 블락 중 복호화된 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 인접 블록을 검출하고 상기 검출된 인접 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 움직임 벡터 예측부; 및 상기 움직임 벡터 차분값에 상기 예측 움직임 벡터값을 합하여 움직임 벡터를 복원하는 움직임 벡터 복원부;를 포함한다. In another preferred embodiment of the present invention, the decoder for decoding the blocks of the encoded multiview video bit stream by using the adaptive motion vector prediction method subtracts the prediction motion vector value of the predetermined block from the motion vector value of the predetermined block. A receiver configured to receive a multiview video bitstream including a motion vector difference value and motion vector information; An entropy decoding unit to decode blocks in the received bit stream using the motion vector information and the motion vector difference value; Among the blocks in the decoded bit stream, a neighboring block that refers to the same block as the block to which the decoded current block refers temporally or spatially is detected, and a predicted motion vector value of the current block based on the detected motion vector of the neighboring block. A motion vector predictor for obtaining a; And a motion vector reconstruction unit reconstructing the motion vector by adding the predicted motion vector value to the motion vector difference value.
본 발명의 또 다른 바람직한 일 실시예에서, 다시점 영상에서 적응적 움직임 벡터 예측 방법은 (a) 현재 블록이 시간적 또는 공간적으로 참조하는 블록을 검출하는 단계; (b) 상기 현재 블록과 인접한 블록 중 (a) 단계에서 검출된 블록을 참조하는 블록을 검출하는 단계; 및 (c) (b) 단계에서 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 단계;를 포함한다. In another preferred embodiment of the present invention, the adaptive motion vector prediction method in a multiview image comprises the steps of: (a) detecting a block to which the current block refers temporally or spatially; (b) detecting a block referring to the block detected in step (a) of the block adjacent to the current block; And (c) obtaining a predicted motion vector value of the current block based on the motion vector of the block detected in step (b).
본 발명의 또 다른 바람직한 일 실시예에서, 적응적 움직임 벡터 예측에 기반한 인코딩 방법은 (a) 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 인접 블록을 검출하고 상기 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 단계; (b) 상기 현재 블록의 움직임 벡터값에서 상기 움직임 벡터 예측부에서 구한 현재 블록의 예측 움직임 벡터값의 차분을 부호화하는 단계;를 포함한다. In another preferred embodiment of the present invention, an encoding method based on adaptive motion vector prediction includes (a) detecting an adjacent block that refers to the same block as the block to which the current block refers temporally or spatially and Obtaining a predicted motion vector value of the current block based on the motion vector; and (b) encoding a difference between the predicted motion vector value of the current block obtained by the motion vector predictor from the motion vector value of the current block.
본 발명의 또 다른 바람직한 일 실시예에서 인코딩된 다시점 동영상 비트 스트림의 블락들을 적응적 움직임 벡터 예측에 기반하여 디코딩하는 방법은 (a) 소정 블록의 움직임 벡터값에서 상기 소정 블록의 예측 움직임 벡터값을 차분한 움직임 벡터 차분값, 움직임 벡터 정보를 포함하는 다시점 동영상 비트스트림을 수신하는 단계; (b) 상기 수신된 다시점 동영상 비트 스트림 내의 블락 들을 상기 움직임 벡터 정보 및 상기 움직임 벡터 차분값을 이용하여 복호화하는 단계; (c) 상기 복호화된 비트 스트림 내의 블락 중 복호화된 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 인접 블록을 검출하고 상기 검출된 인접 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 단계; 및 (d) 상기 움직임 벡터 차분값에 상기 예측 움직임 벡터값을 합하여 움직임 벡터를 복원하는 단계;를 포함한다. In another preferred embodiment of the present invention, a method of decoding blocks of an encoded multiview video bit stream based on adaptive motion vector prediction includes (a) a predicted motion vector value of the predetermined block from a motion vector value of a predetermined block. Receiving a multiview video bitstream including a motion vector differential value and motion vector information obtained by subtracting the motion vector; (b) decoding the blocks in the received multi-view video bit stream using the motion vector information and the motion vector difference value; (c) detecting a neighboring block of the blocks in the decoded bit stream that refer to the same block as the block that the decoded current block refers to temporally or spatially and predicting the current block based on the detected motion vector of the neighboring block; Obtaining a motion vector value; And (d) reconstructing the motion vector by adding the predicted motion vector value to the motion vector difference value.
본 발명에서는 움직임 벡터 예측의 정확도를 높이기 위해 주위의 블록 중에 현재 프레임과 관련된 블록만을 이용하여 움직임 벡터 차분을 줄여 압축률을 높이는 효과가 있다. In the present invention, in order to increase the accuracy of the motion vector prediction, the compression rate is increased by reducing the motion vector difference using only blocks related to the current frame among neighboring blocks.
또한, 본 발명의 움직임 벡터 예측 방법은 주위 블록의 상태에 따라 결정하기 때문에 기존의 신택스(syntax)에 어떠한 영향을 주지 않으며, 부호화 및 복호화 단계의 움직임 벡터 예측 방법의 의미(semantics)만 약간 수정함으로써 달성될 수 있는 효과가 있다. In addition, since the motion vector prediction method of the present invention is determined according to the state of neighboring blocks, the motion vector prediction method does not have any influence on the existing syntax, and by only slightly modifying the semantics of the motion vector prediction method in the encoding and decoding steps. There is an effect that can be achieved.
이에 따라, 보다 정확한 움직임 벡터 예측을 하여 실제 움직임 벡터와 예측된 움직임 벡터간의 차분 값을 줄여 엔트로피 부호화의 효율을 높임으로써 종래의 부호화 방법보다 높은 압축률을 얻을 수 있다.Accordingly, a higher compression rate can be obtained than the conventional coding method by increasing the efficiency of entropy encoding by reducing the difference between the actual motion vector and the predicted motion vector by performing more accurate motion vector prediction.
도 1 (a) 는 다시점 동영상에서 적응적 움직임 벡터 예측 장치의 내부 구성도를 도시한다.
도 1 (b) 는 다시점 동영상에서 적응적 움직임 벡터 예측 장치의 내부 상세도를 도시한다.
도 2 (a) 내지 (c) 는 H.264 표준에서 움직임 벡터 예측 방법을 도시한다.
도 3 (a) 및 (b) 는 현재 블록과 하나의 인접 블록의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다.
도 4 (a) 및 (b) 는 현재 블록과 하나의 인접 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다.
도 5 (a) 및 (b) 는 현재 블록과 두 개의 인접 블록의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다.
도 6 (a) 및 (b) 는 현재 블록과 두 개의 인접 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다.
도 7 (a) 및 (b) 는 현재 블록과 인접한 모든 블록의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다.
도 8 (a) 및 (b) 는 현재 블록과 두 개의 인접 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다.
도 9 (a) 및 (b) 는 현재 블록의 참조 프레임은 이전 공간의 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 이전 시간에 부호화된 프레임일 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다.
도 10 (a) 및 (b) 는 현재 블록의 참조 프레임은 이전 시간에 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 현재 공간과 다른 공간의 부호화된 프레임일 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다.
도 11 은 본 발명의 바람직한 일 실시예로서, 적응적 움직임 예측 기법에 기반한 인코더를 도시한다.
도 12 는 본 발명의 바람직한 일 실시예로서, 적응적 움직임 예측 기법에 기반한 디코더를 도시한다.
도 13 은 본 발명의 바람직한 일 실시예로서, 다시점 영상에서 움직임 벡터 예측 과정을 흐름도로 도시한다.
도 14 는 본 발명의 바람직한 일 실시예로서, 인코더에서 다시점 영상의 움직임 벡터 예측 과정을 흐름도로 도시한다.
도 15 는 본 발명의 바람직한 일 실시예로서, 디코더에서 다시점 영상의 움직임 벡터 예측 과정을 흐름도로 도시한다.FIG. 1A illustrates an internal configuration diagram of an adaptive motion vector prediction apparatus in a multiview video.
1 (b) shows an internal detailed view of the adaptive motion vector prediction apparatus in a multiview video.
2 (a) to (c) show a motion vector prediction method in the H.264 standard.
3 (a) and (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and one adjacent block is a previous spatial frame at the same time.
4 (a) and (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and one neighboring block is the same spatial frame at a previous time.
5 (a) and (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and two adjacent blocks is a previous spatial frame at the same time.
6 (a) and 6 (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and two adjacent blocks is the same spatial frame at a previous time.
7 (a) and (b) illustrate a motion vector prediction method and a calculation process when reference frames of all blocks adjacent to the current block are previous spatial frames of the same time.
8 (a) and (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and two adjacent blocks is the same spatial frame at a previous time.
9 (a) and 9 (b) show a motion vector prediction method and a calculation process when a reference frame of a current block is a coded frame of a previous space and all reference frames of adjacent blocks are frames encoded at a previous time.
10 (a) and (b) show a motion vector prediction method and a calculation process when a reference frame of a current block is a frame encoded at a previous time and all the reference frames of adjacent blocks are encoded frames in a different space from the current space. Illustrated.
11 illustrates an encoder based on an adaptive motion prediction technique as a preferred embodiment of the present invention.
12 illustrates a decoder based on an adaptive motion prediction technique as a preferred embodiment of the present invention.
FIG. 13 is a flowchart illustrating a motion vector prediction process in a multiview image, according to an embodiment of the present invention.
14 is a flowchart illustrating a motion vector prediction process of a multiview image in an encoder according to an embodiment of the present invention.
15 is a flowchart illustrating a motion vector prediction process of a multiview image in a decoder according to an embodiment of the present invention.
이하 본 발명의 바람직한 실시예가 첨부된 도면들을 참조하여 설명될 것이다. 도면들 중 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호들 및 부호들로 나타내고 있음에 유의해야 한다. 하기에서 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings. It should be noted that the same elements among the drawings are denoted by the same reference numerals and symbols as much as possible even though they are shown in different drawings. In the following description of the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.
도 1 (a), (b)는 다시점 동영상에서 적응적 움직임 벡터 예측 장치의 내부 구성도를 도시한다.
1 (a) and (b) show an internal configuration diagram of an adaptive motion vector prediction apparatus in a multiview video.
*도 1 (a) 에 도시된 바와 같이, 본 발명의 바람직한 일 실시예로서 다시점 동영상에서 적응적 움직임 벡터 예측 장치(100)는 블록 검출부(110), 적응적 예측부(120)를 포함한다. As shown in FIG. 1A, the adaptive motion
적응적 움직임 벡터 예측 장치(100)는 H.264 표준의 움직임 벡터 예측 방법에 의해 움직임 벡터를 구하는 것을 기반으로 하며, 이에 더하여 현재 블록의 움직임 벡터 예측을 위해 주변 블록이 참조하는 공간과 시간에 따라 움직임 벡터 예측 방법을 적응적으로 사용한다.The adaptive motion
또한 다시점 동영상 부호화시, 현재 프레임을 부호화할 때 이전에 부호화된 다른 공간의 프레임 또는 이전에 부호화된 다른 시간의 프레임을 모두 참조하여 부호화 효율을 높인다. In the multi-view video encoding, when encoding the current frame, the encoding efficiency is improved by referring to all frames of another space previously encoded or frames of another time encoded previously.
블록 검출부(110)에서는 현재 부호화하고자 하는 블록의 참조 프레임과 인접 블록들의 참조 프레임이 공간 또는 시간이 서로 다른 경우, 인접 블록의 움직임 벡터를 이용하여 현재 블록의 움직임 벡터를 예측하면 잘못된 값이 예측될 수 있는바, 이러한 예측의 오차를 방지하기 위하여 현재 블록의 인접 블록 중 상기 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 블록만을 검출한다.If the reference frame of the block to be currently encoded and the reference frame of adjacent blocks have different spaces or time, the
적응적 예측부(120)는 블록 검출부(110)에서 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구한다. 즉, 현재 블록의 예측 움직임 벡터값은 블록 검출부(110)에서 검출된 블록의 개수와 검출된 블록의 움직임 벡터를 기초로 구해진다. 이에 대하여서는 도 1b와 관련하여 상세히 살펴보기로 한다.The
다시점 동영상에서 적응적 움직임 벡터 예측 장치를 구현하는 일 실시예로서, 블록 검출부(110, 130)는 현재 블록 파악부(131), 시간 벡터 추정부(132) 및 공간 벡터 추정부(133)를 포함한다(도 1(b)). As an embodiment of implementing an adaptive motion vector prediction apparatus in a multiview video, the
현재 블록 파악부(131)는 현재 블록이 참조하는 블락을 검출하고, 참조 블락을 참조하는 벡터가 시간에 기반한 시간벡터를 공간에 기반한 공간 벡터인지 특성을 파악한다. The current block identifying unit 131 detects a block referenced by the current block, and determines whether the vector referring to the reference block is a time vector based on space or a space vector based on space.
시간 벡터 추정부(132)는 현재 블록의 움직임 벡터가 참조 블록과 시간적 차이에 기반을 둔 시간 벡터에 해당하는 경우 블록 검출부(110)에서 검출된 현재 블록의 참조 블록과 동일한 참조 블록을 참조하는 블록 중 움직임 벡터가 상기 시간 벡터에 해당하는 블록을 파악한다. 구체적인 실시예로는 도 4, 도 6, 도 8을 들 수 있다. The time vector estimator 132 refers to a block that refers to the same reference block as the reference block of the current block detected by the
공간 벡터 추정부(133)는 현재 블록의 움직임 벡터가 참조 블록과 공간적 차이에 기반을 둔 공간 벡터에 해당하는 경우 블록 검출부(110)에서 검출된 현재 블록의 참조 블록과 동일한 참조 블록을 참조하는 블록 중 움직임 벡터가 공간 벡터에 해당하는 블록을 파악한다. 구체적인 실시예로는 도 3, 도 5, 도 7을 들 수 있다. The spatial vector estimator 133 refers to a block referring to the same reference block as the reference block of the current block detected by the
적응적 예측부(120, 140)는 시간 벡터 추정부(132) 또는 공간 벡터 추정부(133)에서 검출된 블록의 수 및 파악된 블록의 움직임 벡터를 기초로 예측 움직임 벡터값을 계산한다. The
적응적 예측부(140)는 현재 블록과 동일한 참조 블록을 지닌 인접 블락이 하나일 때, 검출된 하나의 인접 블락의 움직임 벡터가 시간 벡터인 경우 시간 벡터를 현재 블락의 예측 움직임 벡터값으로 이용하고, 검출된 하나의 인접 블락의 움직임 벡터가 공간 벡터인 경우 공간 벡터를 현재 블락의 예측 움직임 벡터값으로 이용한다. 이에 대하여서는 도 3 (a),(b) 및 도 4 (a), (b)에서 보다 상세히 살펴보기로 한다. When there is one adjacent block having the same reference block as the current block, the
적응적 예측부(140)는 현재 블록과 동일한 참조 블록을 지닌 인접 블락이 두 개일 때, 검출된 두 개의 블락의 움직임 벡터 평균을 현재 블락의 예측 움직임 벡터값으로 이용한다. 보다 상세히, 현재 블락의 참조 블락과의 움직임 벡터가 공간 벡터인 경우 검출된 두 개 블락의 움직임 공간 벡터 평균으로, 현재 블락의 참조 블락과의 움직임 벡터가 시간 벡터인 경우 검출된 두 개의 블락의 움직임 시간 벡터 평균 각각을 현재 블락의 예측 움직임 벡터값으로 구한다. 이에 대하여서는 도 5 (a),(b) 및 도 6 (a), (b)에서 보다 상세히 살펴보기로 한다. When there are two adjacent blocks having the same reference block as the current block, the
적응적 예측부(140)는 현재 블록과 동일한 참조 블록을 지닌 인접 블락이 세 개, 즉, 인접한 블록 전체인 경우, 검출된 세 개의 블락의 움직임 벡터 중간값을 현재 블락의 예측 움직임 벡터값으로 이용한다. 보다 상세히, 현재 블락의 참조 블락과의 움직임 벡터가 공간 벡터인 경우 검출된 세 개 블락의 움직임 공간 벡터 중간값, 현재 블락의 참조 블락과의 움직임 벡터가 시간 벡터인 경우 검출된 세 개 블락의 움직임 시간 벡터 중간값 각각을 현재 블락의 예측 움직임 벡터값으로 이용한다. 이에 대하여서는 도 7 (a),(b) 및 도 8 (a), (b)에서 보다 상세히 살펴보기로 한다. When there are three adjacent blocks having the same reference block as the current block, that is, the entire adjacent blocks, the
적응적 예측부(140)는 현재 블록과 동일한 참조 블록을 지닌 인접 블락이 존재하지 않는 경우, 보다 상세히, 현재 블록의 참조 프레임은 이전 공간의 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 이전 시간의 부호화된 프레임일 경우;및 현재 블록의 참조 프레임은 이전 시간에 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 현재 공간과 다른 공간의 부호화된 프레임일 경우 (0,0) 벡터를 예측 움직임 벡터값으로 이용한다. 이에 대하여서는 도 9 (a),(b) 및 도 10 (a), (b)에서 보다 상세히 살펴보기로 한다.When there is no adjacent block having the same reference block as the current block, the
도 2 (a) 내지 (c) 는 H.264 표준에서 움직임 벡터 예측 방법을 도시한다. 2 (a) to (c) show a motion vector prediction method in the H.264 standard.
동영상 데이터를 부호화하기 위해 사용되는 H.264 표준에 따르면 하나의 프레임을 소정 크기의 블록으로 나누어 이미 부호화가 끝난 인접한 프레임을 참조하여 가장 유사한 블록을 검색하는 움직임 검색을 수행한다. 즉, 현재 매크로 블록의 좌측과 상단, 그리고 상단 우측의 세 매크로 블록의 움직임 벡터 중에서 중간값을 움직임 벡터의 예측 값으로 정한다.According to the H.264 standard used for encoding video data, a frame is divided into blocks having a predetermined size, and a motion search is performed to search for the most similar block by referring to an adjacent frame that has already been encoded. That is, a median value among the motion vectors of the three macroblocks on the left side, the upper side, and the upper right side of the current macroblock is determined as the predicted value of the motion vector.
그 후 움직임 검색에서 얻은 최적의 움직임 벡터로 현재 진행 중인 블록을 표현하여 압축률을 높이고 움직임 검색을 수행하기 전에 움직임 벡터 예측을 수행하여 실제 움직임 벡터와 예측된 움직임 벡터의 차분을 최소화하여 부호화한다.After that, the current block is represented by the optimal motion vector obtained from the motion search to increase the compression ratio, and before the motion search is performed, the motion vector prediction is performed to minimize and encode the difference between the actual motion vector and the predicted motion vector.
보다 구체적으로, 도 2 (a) 는 H.264 표준에서 움직임 벡터 중간값 예측 방법을 도시한다. 주위의 블록 A, B, C가 같은 슬라이스이면 그 블록들의 움직임 벡터 중간값을 현재 블록의 움직임 벡터 예측 값으로 사용한다. More specifically, Fig. 2 (a) shows a motion vector median prediction method in the H.264 standard. If neighboring blocks A, B, and C are the same slice, the motion vector median of the blocks is used as the motion vector prediction value of the current block.
이 과정이 수행되기 위해서는 먼저 주위의 블록이 현재 참조 프레임과 같은지를 조사한다. 주위 세 개의 블록 A, B, C 중에 하나만 같은 참조 프레임을 참조하는 경우 중간값 예측을 수행하지 않고 바로 같은 참조 프레임을 가지는 블록의 움직임 벡터를 현재 블록의 움직임 벡터 예측 값으로 사용하고 그렇지 않은 경우에는 A, B, C 세 개 블록의 움직임 벡터에서 중간값 예측을 수행하여 현재 블록의 움직임 벡터 예측 값으로 이용한다. To do this, first check whether the surrounding blocks are equal to the current reference frame. If only one of the three neighboring blocks A, B, or C refers to the same reference frame, the motion vector of the block having the same reference frame is used as the motion vector prediction value of the current block without performing intermediate value prediction. Median prediction is performed on the motion vectors of three blocks A, B, and C and used as the motion vector prediction value of the current block.
도 2 (b) 및 2 (c)는 H.264 표준에서 블록 크기가 각각 16x8, 8x16 일 경우에 움직임 벡터 예측 방법을 도시한다. 2 (b) and 2 (c) show a motion vector prediction method when the block sizes are 16x8 and 8x16, respectively, in the H.264 standard.
도 2 (b)에서 현재 블록 E의 크기가 16x8(220, 230)일때, 현재 블록 E1(220)의 참조 프레임과 블록 B의 참조 프레임이 같을 경우 블록 B의 움직임 벡터를 현재 블록 E1(220)의 움직임 벡터 예측 값으로 사용하고, 그렇지 않을 경우 중간값 예측 방법을 사용한다. In FIG. 2B, when the size of the current block E is 16 × 8 (220, 230), when the reference frame of the
또, 현재 블록 E2(230)의 참조 프레임이 블록 A의 참조 프레임과 같을 경우 블록 A의 움직임 벡터를 현재 블록 E2의 움직임 벡터 예측 값으로 사용하고, 그렇지 않을 경우 중간값 예측 방법을 사용한다. In addition, when the reference frame of the
그리고, 도 2 (c)에서 현재의 블록 E의 크기가 8x16(240, 250)이면, 블록 E3(240)의 참조 프레임이 블록 A의 참조 프레임과 같을 경우 블록 A의 움직임 벡터를 현재 블록 E3의 움직임 벡터 예측 값으로 사용하고, 그렇지 않을 경우 중간값 예측 방법을 사용한다.
If the current block E has a size of 8x16 (240, 250) in FIG. 2 (c), when the reference frame of the
*또, 현재 블록 E4의 참조 프레임이 블록 C의 참조 프레임과 같을 경우 블록 C의 움직임 벡터를 E4 블록의 움직임 벡터 예측값으로 사용하고, 그렇지 않을 경우 중간값 예측 방법을 사용한다. In addition, when the reference frame of the current block E4 is the same as the reference frame of the block C, the motion vector of the block C is used as the motion vector prediction value of the E4 block. Otherwise, the median prediction method is used.
이하, 도 3에서 도 10은 본 발명의 바람직한 일 실시예로서, H.264 표준의 움직임 예측 방법을 기초로 다시점 영상에서 움직임 예측 벡터를 구하는 방법 및 그 일 실시예 들을 살펴보겠다. 3 to 10 illustrate a method and method for obtaining a motion prediction vector from a multiview image based on the motion prediction method of the H.264 standard as an embodiment of the present invention.
상세 설명에 앞서, 도 3에서 도 10의 점선은 현재 블록과 참조 블록 간에 시간적 차이에 기반을 둔 시간 벡터를 표시하고, 실선은 현재 블록과 참조 블록 간에 공간적 차이에 기반을 둔 공간 벡터를 표시한다.Prior to the detailed description, the dotted lines of FIG. 3 to 10 denote temporal vectors based on temporal differences between the current block and the reference block, and the solid lines denote spatial vectors based on the spatial difference between the current block and the reference block. .
도 3 (a) 및 (b) 는 현재 블록과 하나의 인접 블록의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다. 3 (a) and (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and one adjacent block is a previous spatial frame at the same time.
도 3 (a)는 현재 블록(301)과 인접 블록 B(302)의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우 움직임 벡터는 공간 벡터이며, 이 경우 현재 블록의 예측 움직임 벡터값을 구하기 위하여 이전 공간의 같은 시간 프레임을 참조하는 블록 B의 공간 움직임 벡터를 이용한다. 3 (a) shows that when the reference frames of the
도 3(b) 는 현재 블록과 인접 블록 B의 참조 프레임이 이전 공간의 같은 시간 프레임일 경우 적응적 움직임 벡터 예측 방법을 이용하는 인코더 측에서 현재 블록의 실제 공간 움직임 벡터와 예측된 공간 움직임 벡터 간의 차분 계산 과정을 도시한다. 3 (b) shows the difference between the actual spatial motion vector and the predicted spatial motion vector of the current block at the encoder side using the adaptive motion vector prediction method when the reference frame of the current block and the adjacent block B is the same time frame of the previous space. The calculation process is shown.
이 경우, 움직임 검색을 통한 최적의 공간 움직임 벡터 DV = (4, 3)과 적응적 예측부(140)에서 현재 블록의 예측 움직임 벡터값으로 구한 공간 움직임 벡터 PDV = (5, 3)(이전 공간의 같은 시간 프레임을 참조하는 블록 B의 공간 움직임 벡터)간의 차분 DVD = (-1, 0)을 인코더에서 이용한다. In this case, the optimal spatial motion vector DV = (4, 3) through motion search and the spatial motion vector PDV = (5, 3) (previous space) obtained by the predictive motion vector value of the current block by the
도 4 (a) 및 (b) 는 현재 블록과 하나의 인접 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다. 4 (a) and (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and one neighboring block is the same spatial frame at a previous time.
도 4 (a)에서 현재 블록과 하나의 인접 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우(402) 움직임 벡터 예측 값을 구하기 위하여 동일 공간의 이전 공간에 부호화된 프레임을 참조하는 블록 A(401)의 움직임 벡터를 이용한다. In FIG. 4 (a), when the reference frame of the current block and one adjacent block is the same space frame of the previous time (402), block A (reference to the frame encoded in the previous space of the same space to obtain a motion vector prediction value) Using the motion vector of 401).
도 4(b)는 현재 블록과 인접 블록 A의 참조 프레임이 이전 시간의 동일 공간에서 부호화된 프레임일 경우에 적응적 움직임 벡터 예측 방법을 이용하는 인코더 측에서 현재 블록의 실제 시간 움직임 벡터와 예측된 시간 움직임 벡터 간의 차분을 구하는 계산 과정을 나타낸다. 4 (b) shows the actual time motion vector and predicted time of the current block at the encoder side using the adaptive motion vector prediction method when the reference frame of the current block and the adjacent block A is a frame encoded in the same space of the previous time. Represents a calculation process for finding the difference between motion vectors.
이 경우, 움직임 검색을 통한 최적의 시간 움직임 벡터 MV = (1, 4)와 적응적 예측부(140)에서 현재 블록의 예측 움직임 벡터값으로 구한 시간 움직임 벡터 PMV = (0, 3)(이전 시간에 부호화된 프레임을 참조하는 블록 A의 움직임 벡터)간의 차분 MVD = (1, 1)을 예측 움직임 벡터값으로 인코더에서 사용한다. In this case, the optimal temporal motion vector MV = (1, 4) through motion search and the temporal motion vector PMV = (0, 3) (previous time) obtained by the
도 5 (a) 및 (b) 는 현재 블록과 두 개의 인접 블록의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다. 5 (a) and (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and two adjacent blocks is a previous spatial frame at the same time.
도 5 (a)에서 현재 블록과 인접 블록 중 블록 A, B의 참조 프레임이 이전 공간의 같은 시간 프레임인 경우(501, 502, 503) 공간 움직임 벡터 예측 값은 이전 공간의 같은 시간 프레임을 참조하는 블록 A, B(501, 503)의 공간 움직임 벡터 평균을 그 값으로 사용한다. In FIG. 5A, when the reference frames of blocks A and B of the current block and adjacent blocks are the same time frame in the previous space (501, 502, 503), the spatial motion vector prediction value refers to the same time frame in the previous space. The average of the spatial motion vectors of blocks A and B (501, 503) is used as the value.
도 5 (b) 는 현재 블록과 인접 블록 중 블록 A, B의 참조 프레임이 이전 공간의 같은 시간 프레임일 경우에 적응적 움직임 벡터 예측 방법을 이용하는 인코더 측에서 실제 공간 움직임 벡터와 예측된 공간 움직임 벡터간의 차분을 구하는 과정을 나타낸다. FIG. 5 (b) shows the actual spatial motion vector and the predicted spatial motion vector at the encoder side using the adaptive motion vector prediction method when the reference frames of blocks A and B of the current block and neighboring blocks are the same time frame of the previous space. It shows the process of finding the difference between them.
이 경우, 움직임 검색을 통한 최적의 공간 움직임 벡터 DV = (4, 1)과 적응적 예측부(140)에서 현재 블록의 예측 움직임 벡터값으로 구한 공간 움직임 벡터 PDV = (4, 1)(이전 공간의 같은 시간 프레임을 참조하는 블록 A, B의 공간 움직임 벡터 평균 값)간의 차분 DVD = (0, 0)을 사용한다. In this case, the optimal spatial motion vector DV = (4, 1) through motion search and the spatial motion vector PDV = (4, 1) (previous space) obtained by the predictive motion vector value of the current block by the
도 6 (a) 및 (b) 는 현재 블록과 두 개의 인접 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다. 6 (a) and 6 (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and two adjacent blocks is the same spatial frame at a previous time.
도 6 (a)에서 현재 블록과 인접 블록 중 블록 B, C의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우(601,602,603), 움직임 벡터 예측 값을 구하기 위하여 현재 시점의 이전에 부호화된 프레임을 참조하는 블록 B, C(602,603)의 움직임 벡터 평균을 이용한다. In FIG. 6 (a), when the reference frames of blocks B and C of the current block and the adjacent blocks are the same spatial frames of the previous time (601, 602, 603), the previously encoded frame of the current view is referred to to obtain a motion vector prediction value. The motion vector average of blocks B, C (602, 603) is used.
도 6 (b)는 현재 블록과 인접 블록 중 블록 B, C의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우 적응적 움직임 벡터 예측 방법을 이용하는 인코더 측에서 실제 시간 움직임 벡터와 예측된 시간 움직임 벡터간의 차분을 구하는 과정을 나타낸다. FIG. 6 (b) shows that the actual time motion vector and the predicted time motion vector at the encoder side using the adaptive motion vector prediction method when the reference frames of blocks B and C among the current block and the adjacent block are the same spatial frame of the previous time. It shows the process of finding the difference.
이 경우, 움직임 검색을 통한 최적의 시간 움직임 벡터 MV = (3, 3)과 적응적 예측부(140)에서 현재 블록의 예측 움직임 벡터값으로 구한 움직임 시간 벡터 PMV = (2, 3)(이전 시간의 동일 공간 프레임을 참조하는 블록 B, C의 움직임 벡터 평균 값)간의 차분 MVD = (1, 0)을 사용한다. In this case, the optimal time motion vector MV = (3, 3) through motion search and the motion time vector PMV = (2, 3) (previous time) obtained by the predictive motion vector value of the current block by the
도 7 (a) 및 (b) 는 현재 블록과 인접한 모든 블록의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다. 7 (a) and (b) illustrate a motion vector prediction method and a calculation process when reference frames of all blocks adjacent to the current block are previous spatial frames of the same time.
도 7 (a)에서 현재 블록과 인접한 모든 블록의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우(701, 702, 703, 704) 움직임 예측 값을 구하기 위하여 주변 블록들의(702, 703, 704) 공간 움직임 벡터 중간값을 이용한다. In FIG. 7 (a), when the reference frames of all blocks adjacent to the current block are previous spatial frames of the same time (701, 702, 703, 704), the spaces of the neighboring blocks (702, 703, 704) are obtained to obtain a motion prediction value. Use the median motion vector.
도 7 (b)는 현재 블록과 인접한 모든 블록의 참조 프레임이 동일 시간의 이전 공간 프레임인 경우 실제 공간 움직임 벡터와 예측된 공간 움직임 벡터간의 차분을 구하는 과정을 나타낸다. FIG. 7B illustrates a process of obtaining a difference between an actual spatial motion vector and a predicted spatial motion vector when reference frames of all blocks adjacent to the current block are previous spatial frames at the same time.
이 경우, 적응적 움직임 벡터 예측 방법을 이용하는 인코더 측에서 움직임 검색을 통한 최적의 공간 움직임 벡터 DV = (8,3)과 적응적 예측부(140)에서 현재 블록의 예측 움직임 벡터값으로 구한 공간 움직임 벡터 PDV = (6, 2)(인접 블록들의 공간 움직임 벡터 중간값) 또는 PDV = (7, 3)(인접 블록들의 공간 움직임 벡터 평균 값)간의 차분 DVD = (1, 2) 또는 DVD = (2,2)를 사용한다. In this case, the spatial motion obtained by the optimal motion vector DV = (8,3) through the motion search on the encoder side using the adaptive motion vector prediction method and the predicted motion vector value of the current block by the
도 8 (a) 및 (b) 는 현재 블록과 두 개의 인접 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다. 8 (a) and (b) illustrate a motion vector prediction method and a calculation process when a reference frame of a current block and two adjacent blocks is the same spatial frame at a previous time.
도 8 (a)에서 현재 블록과 인접한 모든 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우(801, 802, 803, 804), 움직임 예측 값을 구하기 위하여 주변 블록(802, 803, 804)의 움직임 벡터 중간값을 이용한다. In FIG. 8 (a), when the reference frames of all blocks adjacent to the current block are the same spatial frames of the previous time (801, 802, 803, 804), the neighboring blocks (802, 803, 804) of the neighboring blocks to obtain a motion prediction value are obtained. Use the median motion vector.
도 8 (b)는 현재 블록과 인접한 모든 블록의 참조 프레임이 이전 시간의 동일 공간 프레임인 경우 실제 움직임 벡터와 예측된 움직임 벡터간의 차분을 구하는 과정을 나타낸다. FIG. 8 (b) shows a process of obtaining a difference between the actual motion vector and the predicted motion vector when the reference frames of all blocks adjacent to the current block are the same spatial frames of the previous time.
이 경우도, 적응적 움직임 벡터 예측 방법을 이용하는 인코더 측에서 움직임 검색을 통한 최적의 시간 움직임 벡터 MV = (4, 3)과 적응적 예측부(140)에서 현재 블록의 예측 움직임 벡터값으로 구한 움직임 시간 벡터 PMV = (3, 1)(인접 블록들의 움직임 시간 벡터 중간값) 또는 PMV = (2, 1)(인접 블록들의 움직임 시간 벡터 평균 값)간의 차분 MVD = (1, 2) 또는 MVD = (2, 2)를 사용한다. In this case, the motion obtained by using the optimal motion vector MV = (4, 3) through the motion search on the encoder side using the adaptive motion vector prediction method and the predicted motion vector value of the current block by the
도 9 (a) 및 (b) 는 현재 블록의 참조 프레임은 이전 공간의 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 이전 시간에 부호화된 프레임일 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다. 9 (a) and 9 (b) show a motion vector prediction method and a calculation process when a reference frame of a current block is a coded frame of a previous space and all reference frames of adjacent blocks are frames encoded at a previous time.
도 9 (a)에서 현재 블록의 참조 프레임은 이전 공간의 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 이전 시간에 부호화된 프레임일 경우, 인접 블록에서는 현재 블록의 변위 움직임 벡터 예측을 수행하는데 필요한 정보를 얻을 수 없기 때문에 변위 움직임 벡터 예측 값은 (0,0) 벡터를 그 값으로 사용한다. In FIG. 9 (a), when a reference frame of a current block is an encoded frame of a previous space and all of the reference frames of adjacent blocks are frames encoded at a previous time, a neighboring block is required to perform displacement motion vector prediction of the current block. Since no information is available, the displacement motion vector prediction value uses the vector (0,0) as its value.
도 9 (b)는 이전 공간의 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 이전 시간에 부호화된 프레임일 경우, 적응적 움직임 벡터 예측 방법을 이용하는 인코더 측에서 움직임 검색을 통한 최적의 움직임 벡터 DV = (3, 3)과 적응적 예측부(140)에서 현재 블록의 예측 움직임 벡터값으로 구한 공간 움직임 벡터 PDV = (0,0)((0,0) 벡터)간의 차분 DVD = (3, 3)을 사용한다. FIG. 9 (b) shows an optimal motion vector DV through motion search at an encoder using an adaptive motion vector prediction method when the previous frames are encoded frames and all reference frames of adjacent blocks are frames encoded at a previous time. = Difference DVD = (3, 3) between the spatial motion vector PDV = (0,0) ((0,0) vector) obtained by the predictive motion vector value of the current block by the adaptive predictor 140 ).
도 10 (a) 및 (b) 는 현재 블록의 참조 프레임은 이전 시간에 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 현재 공간과 다른 공간의 부호화된 프레임일 경우 움직임 벡터 예측 방법과 계산 과정을 도시한다. 10 (a) and (b) show a motion vector prediction method and a calculation process when a reference frame of a current block is a frame encoded at a previous time and all the reference frames of adjacent blocks are encoded frames in a different space from the current space. Illustrated.
도 10 (a)에서 현재 블록의 참조 프레임은 이전 시간에 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 현재 공간과 다른 공간의 부호화된 프레임일 경우, 인접 블록에서는 현재 블록의 움직임 벡터 예측을 수행하는데 필요한 정보를 얻을 수 없기 때문에 움직임 벡터 예측 값은 (0,0) 벡터를 그 값으로 사용한다. In FIG. 10 (a), when the reference frame of the current block is a frame encoded at a previous time and all the reference frames of the neighboring blocks are encoded frames in a different space from the current space, the motion vector prediction of the current block is performed in the neighboring block. The motion vector prediction value uses the (0,0) vector as its value because it cannot obtain the information necessary to do so.
도 10 (b)는 이전 시간에 부호화된 프레임이고, 인접 블록의 참조 프레임은 모두 현재 공간과 다른 공간의 부호화된 프레임일 경우, 적응적 움직임 벡터 예측 방법을 이용하는 인코더 측에서 움직임 검색을 통한 최적의 움직임 벡터 MV = (2, 1)과 적응적 예측부(140)에서 현재 블록의 예측 움직임 벡터값으로 구한 벡터 PMV = (0,0)((0,0) 벡터)간의 차분 MVD = (2, 1)을 인코더에서 사용한다. FIG. 10 (b) shows that the frame is encoded at the previous time and the reference frames of the neighboring blocks are all encoded frames in a space different from the current space. The difference between the motion vector MV = (2, 1) and the vector PMV = (0,0) ((0,0) vector) obtained by the
도 11 은 본 발명의 바람직한 일 실시예로서, 적응적 움직임 예측 기법에 기반한 인코더를 도시한다. 11 illustrates an encoder based on an adaptive motion prediction technique as a preferred embodiment of the present invention.
적응적 움직임 예측 기법에 기반한 인코더는 움직임 벡터 예측부(1110) 및 엔트로피 부호화부(1120)를 포함한다. An encoder based on the adaptive motion prediction technique includes a motion vector predictor 1110 and an entropy encoder 1120.
움직임 벡터 예측부(1110)는 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 인접 블록을 검출하고 상기 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구한다. 또한, 움직임 벡터 예측부(1110)는 블록 검출부(1111)와 적응적 예측부(1112)를 포함하며, 이에 관한 설명은 도 1에서 관련된 설명과 기술적 구성이 유사한 바 이를 참고하기로 한다. The motion vector predictor 1110 detects an adjacent block that refers to the same block as the block that the current block refers to temporally or spatially, and obtains a predicted motion vector value of the current block based on the detected motion vector of the block. In addition, the motion vector predictor 1110 includes a block detector 1111 and an adaptive predictor 1112, and a description thereof will be similar to the related description in FIG. 1.
엔트로피 부호화부(1120)는 움직임 예측을 통해 찾은 현재 블록의 움직임 벡터(MV(Motion Vector)(s1122)에서 움직임 벡터 예측부(1110)에서 본 발명의 적응적 움직임 벡터 예측을 통해 구한 현재 블록의 예측 움직임 벡터값(PMV(Prediction Motion Vector)(s1121)의 차분(MVD, motion vector diffrerence)을 부호화한다. 구체적인 예로 도 3(b)~ 도 10(b)에서 구한 차분 값을 부호화 한다.The entropy encoder 1120 predicts the current block obtained by the adaptive motion vector prediction of the present invention from the motion vector predictor 1110 in the motion vector (MV) s1122 of the current block found through the motion prediction. The motion vector diffrerence (MVD) of the motion vector value PMV (Prediction Motion Vector) s1121 is encoded, and the difference values obtained in FIGS. 3 (b) to 10 (b) are encoded.
인코더 내의 엔트로피 부호화부(1120)에서는 본 발명의 적응적 움직임 벡터 예측 방법을 통해 예측 움직임 벡터값을 구하여 예측 정도가 더 정확해 질수록 현재 블록의 움직임 벡터에서 현재 블록의 예측 움직임 벡터값의 차분(MVD= MV- PMV)이 줄어들어 부호화에 사용될 비트수가 감소된다. In the encoder, the entropy encoder 1120 obtains a predicted motion vector value using the adaptive motion vector prediction method of the present invention, and as the prediction degree becomes more accurate, the difference between the predicted motion vector value of the current block in the current vector MVD = MV-PMV) is reduced to reduce the number of bits to be used for encoding.
도 12 는 본 발명의 바람직한 일 실시예로서, 적응적 움직임 예측 기법에 기반한 디코더를 도시한다. 12 illustrates a decoder based on an adaptive motion prediction technique as a preferred embodiment of the present invention.
인코딩된 다시점 동영상 비트 스트림의 블락들을 적응적 움직임 벡터 예측방법을 이용하여 디코딩하는 디코더는 수신부(도시 안됨), 엔트로피 디코딩부(1210), 움직임 벡터 예측부(1230), 움직임 벡터 복원부(1240)을 포함한다. A decoder for decoding the blocks of the encoded multiview video bit stream using the adaptive motion vector prediction method includes a receiver (not shown), an entropy decoder 1210, a motion vector predictor 1230, and a motion vector reconstructor 1240. ).
수신부는 움직임 벡터 정보, 인코더에서 소정 블록의 움직임 벡터에서 상기 소정 블록의 예측 움직임 벡터값의 차분(MVD= MV- PMV)한 값인 움직임 벡터 차분값을 포함하는 인코더에서 생성된 다시점 동영상 비트스트림을 수신한다. The receiver may generate a multi-view video bitstream generated by an encoder including motion vector information and a motion vector difference value that is a difference (MVD = MV-PMV) of the predicted motion vector value of the predetermined block from the motion vector of the predetermined block in the encoder. Receive.
엔트로피 디코딩부(1210)에서는 인코더에서 생성된 다시점 동영상 비트스트림을 받아 수신된 비트 스트림 내의 블락들을 상기 움직임 벡터 정보 및 상기 움직임 벡터 차분값을 이용하여 먼저 인트라(Intra) 프레임을 복호화를 수행한 후 인터(Inter) 프레임을 엔트로피 복호화 한다. The entropy decoding unit 1210 receives a multiview video bitstream generated by an encoder and first decodes an intra frame using the motion vector information and the motion vector difference value of blocks in the received bit stream. Entropy decodes Inter frames.
움직임 벡터 예측부(1230)는 엔트로피 디코딩부(1210)에서 복호화된 비트 스트림 내의 블락 중 복호화된 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 인접 블록을 검출하고 상기 검출된 인접 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구한다. 움직임 벡터 예측부(1230)에서 예측 움직임 벡터값을 구하는 기술적 사상은 도 1과 관련하여 기술한 기술적 사상이 유사한바, 상세한 설명은 도 1과 관련한 부분을 참고한다. The motion vector predictor 1230 detects an adjacent block that refers to the same block as the block that the decoded current block refers to temporally or spatially among the blocks in the bit stream decoded by the entropy decoding unit 1210, and detects the detected neighboring block. The predicted motion vector value of the current block is obtained based on the motion vector of. The technical idea of obtaining the predicted motion vector value in the motion vector predictor 1230 is similar to the technical idea described with reference to FIG. 1, and a detailed description thereof will be described with reference to FIG. 1.
움직임 벡터 복원부(1240) 엔트로피 디코딩 부(1210)에서 인터 프레임을 엔트로피 복호화 한 후 생성된 움직임 벡터 차분(MVD)과 움직임 벡터 예측부(1230)에서 구한 블록의 예측 움직임 벡터값(PMV)을 합하여 움직임 벡터를 복원한다.The motion vector reconstruction unit 1240 entropy decoding unit 1210 entropy decodes the inter frame to add the motion vector difference MVD and the predicted motion vector value PMV of the block obtained by the motion vector prediction unit 1230. Restore the motion vector.
도 13 은 본 발명의 바람직한 일 실시예로서, 다시점 영상에서 움직임 벡터 예측 과정을 흐름도로 도시한다.FIG. 13 is a flowchart illustrating a motion vector prediction process in a multiview image, according to an embodiment of the present invention.
다시점 영상에서 움직임 벡터를 예측하기 위하여, 현재 블록의 참조 블록을 참조하는 인접 블록을 검출한다(S1310). 현재 블록의 움직임 벡터가 시간 기반 벡터인지 공간 기반 벡터인지 여부를 판단한다(S1320). 검출된 블록 중에서 움직임 벡터가 현재 블록의 움직임 벡터의 벡터 종류와 동일한 블록을 검출한다(S1330, S1340). In order to predict the motion vector in the multiview image, an adjacent block referring to the reference block of the current block is detected (S1310). It is determined whether the motion vector of the current block is a time based vector or a space based vector (S1320). Among the detected blocks, blocks in which the motion vector is the same as the vector type of the motion vector of the current block are detected (S1330 and S1340).
현재 블록의 움직임 벡터가 시간 기반 벡터인 경우의 실시예는 도 4, 6, 8, 10 에 도시되어 있고, 현재 블록의 움직임 벡터가 공간 기반 벡터의 실시예는 3, 5, 7, 9에 도시되어 있다. Embodiments when the motion vector of the current block is a time-based vector are shown in FIGS. 4, 6, 8, and 10, and embodiments of the space-based vector of the current block are shown in 3, 5, 7, and 9 It is.
검출된 시간 기반 또는 공간 기반 움직임 벡터를 기초로 예측 움직임 벡터값을 적응적으로 예측한다. 움직임 벡터의 종류 및 검출된 블록의 수에 기초하여 현재 블록의 예측 움직임 벡터값을 검출하며, 이에 대하여서는 도 1의 적응적 예측부(140)에 관한 설명을 참고한다.The predicted motion vector value is adaptively predicted based on the detected time-based or space-based motion vector. A predicted motion vector value of the current block is detected based on the type of the motion vector and the number of detected blocks. For this, refer to the description of the
도 14 는 본 발명의 바람직한 일 실시예로서, 인코더에서 다시점 영상의 움직임 벡터 예측 과정을 흐름도로 도시한다.14 is a flowchart illustrating a motion vector prediction process of a multiview image in an encoder according to an embodiment of the present invention.
다시점 영상에서 움직임 벡터를 적응적 예측 방법을 기반으로 부호화 하기 위하여, 현재 블록이 시간적 또는 공간적으로 참조하는 블록을 검출한다. 그 후 현재 블록과 인접한 블록 중 현재 블록이 참조하는 블록을 참조하는 블록을 검출한다(S1410). 여기서 현재 블록의 인접 블록은 현재 블록의 좌측, 상측 및 우상측의 블록을 의미한다. In order to encode a motion vector based on an adaptive prediction method in a multiview image, a block referenced by a current block in time or space is detected. Thereafter, a block referring to the block referenced by the current block among the blocks adjacent to the current block is detected (S1410). Herein, an adjacent block of the current block means a block on the left side, upper side and right upper side of the current block.
그 후, 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구한다(S1430). 이 경우 상기 현재 블록의 예측 움직임 벡터값을 구하는 방법은 도 1 의 적응적 예측부(140)에서 예측 움직임 벡터값을 구하는 방법과 기술적 사상에 있어 유사한바 이를 참고하기로 한다.Thereafter, a predicted motion vector value of the current block is obtained based on the detected motion vector of the block (S1430). In this case, the method of obtaining the predicted motion vector value of the current block is similar to the method of obtaining the predicted motion vector value in the
그 후, 현재 블록의 움직임 벡터에서 상기 현재 블록의 예측 움직임 벡터값의 차분(MVD= MV- PMV)한 값인 움직임 벡터 차분값을 구하고, 그 차분값을 부호화 한다(S1430, S1440).Thereafter, a motion vector difference value that is a difference (MVD = MV-PMV) of the predicted motion vector value of the current block from the motion vector of the current block is obtained, and the difference value is encoded (S1430 and S1440).
도 15 는 본 발명의 바람직한 일 실시예로서, 디코더에서 다시점 영상의 움직임 벡터 예측 과정을 흐름도로 도시한다.15 is a flowchart illustrating a motion vector prediction process of a multiview image in a decoder according to an embodiment of the present invention.
인코딩된 다시점 동영상 비트 스트림의 블락들을 적응적 움직임 벡터 예측에 기반하여 디코딩하기 위하여, 인코딩된 다시점 동영상 비트스트림을 수신한다(S1510). 이 경우 다시점 동영상 비트스트림은 소정 블록의 움직임 벡터값에서 상기 소정 블록의 예측 움직임 벡터값을 차분한 움직임 벡터 차분값, 움직임 벡터 정보를 포함한다. In order to decode the blocks of the encoded multiview video bitstream based on adaptive motion vector prediction, the encoded multiview video bitstream is received (S1510). In this case, the multi-view video bitstream includes a motion vector difference value and motion vector information obtained by subtracting the predicted motion vector value of the predetermined block from the motion vector value of the predetermined block.
그 후 수신된 다시점 동영상 비트 스트림 내의 블락 들을 상기 움직임 벡터 정보 및 상기 움직임 벡터 차분값을 이용하여 복호화한다(S1520). Thereafter, the blocks in the received multiview video bit stream are decoded using the motion vector information and the motion vector difference value (S1520).
다음 복호화된 비트 스트림 내의 블락 중 복호화된 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 인접 블록을 검출하고 상기 검출된 인접 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하고(S1530), 움직임 벡터 차분(MVD)과 움직임 벡터 예측부(1230)에서 구한 블록의 예측 움직임 벡터값(PMV)을 합하여 움직임 벡터를 복원한다(S1540).Among the blocks in the next decoded bit stream, a neighboring block is detected that refers to the same block as the block to which the decoded current block refers temporally or spatially, and a predicted motion vector value of the current block is based on the detected motion vector of the neighboring block. In operation S1530, the motion vector is reconstructed by adding the motion vector difference MVD and the predicted motion vector value PMV of the block obtained by the motion vector predictor 1230 (S1540).
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. The present invention can also be embodied as computer-readable codes on a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored.
컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플라피 디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, which are also implemented in the form of carrier waves (for example, transmission over the Internet). It also includes. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
이상 도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. The best embodiments have been disclosed in the drawings and specification above. Although specific terms have been employed herein, they are used for purposes of illustration only and are not intended to limit the scope of the invention as defined in the claims or the claims.
그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible from this. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.
Claims (18)
(b) 상기 현재 블록과 인접한 블록 중 (a) 단계에서 검출된 블록을 참조하는 블록을 검출하는 단계; 및
(c) (b) 단계에서 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 단계;를 포함하는 것을 특징으로 하는 다시점 영상에서 적응적 움직임 벡터 예측 방법.(a) detecting a block to which the current block refers temporally or spatially;
(b) detecting a block referring to the block detected in step (a) of the block adjacent to the current block; And
(c) obtaining a predicted motion vector value of the current block based on the motion vector of the block detected in step (b).
상기 현재 블록의 예측 움직임 벡터값은 검출된 블록의 수가 하나인 경우 상기 검출된 블록의 움직임 벡터값인 것을 특징으로 하는 다시점 동영상에서 적응적 움직임 벡터 예측 방법.The method of claim 1, wherein in step (c)
The predictive motion vector value of the current block is a motion vector value of the detected block when the number of detected blocks is one.
상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 수가 두 개인 경우 상기 검출된 두 개 블록 각각의 움직임 벡터의 평균값인 것을 특징으로 하는 다시점 동영상에서 적응적 움직임 벡터 예측 방법.The method of claim 1, wherein in step (c)
The predicted motion vector value of the current block is the average value of the motion vectors of each of the two detected blocks when the number of detected blocks is two.
상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 수가 세 개인 경우 상기 검출된 세 개 블록 각각의 움직임 벡터의 중간값인 것을 특징으로 하는 다시점 동영상에서 적응적 움직임 벡터 예측 방법.The method of claim 1, wherein in step (c)
The predicted motion vector value of the current block is an intermediate value of the motion vectors of each of the detected three blocks when the number of detected blocks is three.
상기 현재 블록의 예측 움직임 벡터값은 블록이 검출되지 않은 경우 (0,0) 인 것을 특징으로 하는 다시점 동영상에서 적응적 움직임 벡터 예측 방법.The method of claim 1, wherein in step (c)
The predicted motion vector value of the current block is (0,0) when the block is not detected.
상기 움직임 벡터는 H.264 표준에 기초하여 추정되는 것을 특징으로 하는 다시점 동영상에서 적응적 움직임 벡터 예측 방법.The method of claim 1,
The motion vector is adaptive motion vector prediction method in a multi-view video, characterized in that estimated based on the H.264 standard.
(b) 상기 현재 블록의 움직임 벡터값에서 상기 현재 블록의 예측 움직임 벡터값을 구하는 단계에서 구한 현재 블록의 예측 움직임 벡터값의 차분을 부호화하는 단계;를 포함하는 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 인코딩 방법.(a) detecting a neighboring block that references the same block as the block that the current block refers to temporally or spatially and obtaining a predicted motion vector value of the current block based on the detected motion vector of the block;
and (b) encoding a difference between the predicted motion vector value of the current block obtained in the step of obtaining the predicted motion vector value of the current block from the motion vector value of the current block. Based encoding method.
(a1) 상기 현재 블록의 좌측 블록, 상측 블록 및 우상측 블록 중 상기 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 블록만을 검출하는 단계; 및
(a2) 상기 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 계산하는 단계;를 포함하는 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 인코딩 방법.The method of claim 7, wherein step (a)
(a1) detecting only a block of the left block, the upper block, and the right upper block of the current block that references the same block as the block to which the current block refers temporally or spatially; And
(a2) calculating a predicted motion vector value of the current block based on the detected motion vector of the block; encoding method based on adaptive motion vector prediction.
상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 수가 하나인 경우 상기 검출된 블록의 움직임 벡터값인 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 인코딩 방법.8. The method of claim 7, wherein step (b)
The predicted motion vector value of the current block is the motion vector value of the detected block when the number of detected blocks is one.
상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 수가 두 개인 경우 상기 검출된 블록들의 움직임 벡터의 평균값인 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 인코딩 방법.8. The method of claim 7, wherein step (b)
The predictive motion vector value of the current block is an average value of the motion vectors of the detected blocks when the number of detected blocks is two.
상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 수가 세 개인 경우 상기 검출된 블록들의 움직임 벡터의 중간값인 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 인코딩 방법.8. The method of claim 7, wherein step (b)
The predictive motion vector value of the current block is an intermediate value of the motion vectors of the detected blocks when the number of detected blocks is three.
상기 현재 블록의 예측 움직임 벡터값은 블록이 검출되지 않은 경우 (0,0) 인 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 인코딩 방법.8. The method of claim 7, wherein step (b)
The prediction motion vector value of the current block is (0,0) when the block is not detected.
(a) 소정 블록의 움직임 벡터값에서 상기 소정 블록의 예측 움직임 벡터값을 차분한 움직임 벡터 차분값, 움직임 벡터 정보를 포함하는 다시점 동영상 비트스트림을 수신하는 단계;
(b) 상기 수신된 다시점 동영상 비트 스트림 내의 블락 들을 상기 움직임 벡터 정보 및 상기 움직임 벡터 차분값을 이용하여 복호화하는 단계;
(c) 상기 복호화된 비트 스트림 내의 블락 중 복호화된 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 인접 블록을 검출하고 상기 검출된 인접 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 단계; 및
(d) 상기 움직임 벡터 차분값에 상기 예측 움직임 벡터값을 합하여 움직임 벡터를 복원하는 단계;를 포함하는 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 디코딩 방법.A method for decoding blocks of an encoded multiview video bit stream based on adaptive motion vector prediction, comprising:
(a) receiving a multi-view video bitstream including a motion vector difference value and motion vector information obtained by subtracting the predicted motion vector value of the predetermined block from the motion vector value of a predetermined block;
(b) decoding the blocks in the received multi-view video bit stream using the motion vector information and the motion vector difference value;
(c) detecting a neighboring block of the blocks in the decoded bit stream that refer to the same block as the block that the decoded current block refers to temporally or spatially and predicting the current block based on the detected motion vector of the neighboring block; Obtaining a motion vector value; And
and (d) reconstructing the motion vector by adding the predicted motion vector value to the motion vector difference value.
(c1) 현재 블록의 좌측 블록, 상측 블록 및 우상측 블록 중 상기 현재 블록이 시간적 또는 공간적으로 참조하는 블록과 동일한 블록을 참조하는 블록만을 검출하는 단계;
(c2)상기 검출된 블록의 움직임 벡터를 기초로 상기 현재 블록의 예측 움직임 벡터값을 구하는 단계;를 포함하는 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 디코딩 방법.The method of claim 13, wherein step (c)
(c1) detecting only a block among the left block, the upper block, and the right upper block of the current block that refer to the same block as the block to which the current block refers temporally or spatially;
(c2) obtaining a predicted motion vector value of the current block based on the detected motion vector of the block.
상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 수가 하나인 경우 상기 검출된 블록의 움직임 벡터값인 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 디코딩 방법.The method of claim 13, wherein in step (c)
The predictive motion vector value of the current block is a motion vector value of the detected block when the number of detected blocks is one.
상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 수가 두 개인 경우 상기 검출된 블록들의 움직임 벡터의 평균값인 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 디코딩 방법.The method of claim 13, wherein in step (c)
The predictive motion vector value of the current block is an average value of motion vectors of the detected blocks when the number of detected blocks is two.
상기 현재 블록의 예측 움직임 벡터값은 상기 검출된 블록의 수가 세 개인 경우 상기 검출된 블록들의 움직임 벡터의 중간값인 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 디코딩 방법.The method of claim 13, wherein in step (c)
The predictive motion vector value of the current block is an intermediate value of the motion vectors of the detected blocks when the number of detected blocks is three.
상기 현재 블록의 예측 움직임 벡터값은 블록이 검출되지 않은 경우 (0,0) 인 것을 특징으로 하는 적응적 움직임 벡터 예측에 기반한 디코딩 방법.The method of claim 13, wherein in step (c)
The predicted motion vector value of the current block is (0,0) when the block is not detected.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120068178A KR101255230B1 (en) | 2012-06-25 | 2012-06-25 | Method and Apparatus for prediction of adaptive motion vector in multi-viewpoint image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120068178A KR101255230B1 (en) | 2012-06-25 | 2012-06-25 | Method and Apparatus for prediction of adaptive motion vector in multi-viewpoint image |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050114406A Division KR101174901B1 (en) | 2005-11-28 | 2005-11-28 | Method and Apparatus for prediction of adaptive motion vector in multi-viewpoint image |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120096801A Division KR101367815B1 (en) | 2012-08-31 | 2012-08-31 | Method for decoding video data based on prediction of an adaptive motion vector |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120088628A true KR20120088628A (en) | 2012-08-08 |
KR101255230B1 KR101255230B1 (en) | 2013-04-16 |
Family
ID=46873866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120068178A KR101255230B1 (en) | 2012-06-25 | 2012-06-25 | Method and Apparatus for prediction of adaptive motion vector in multi-viewpoint image |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101255230B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014077573A2 (en) * | 2012-11-13 | 2014-05-22 | 엘지전자 주식회사 | Method and apparatus for processing video signals |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4130783B2 (en) * | 2002-04-23 | 2008-08-06 | 松下電器産業株式会社 | Motion vector encoding method and motion vector decoding method |
KR100774296B1 (en) * | 2002-07-16 | 2007-11-08 | 삼성전자주식회사 | Method and apparatus for encoding and decoding motion vectors |
-
2012
- 2012-06-25 KR KR1020120068178A patent/KR101255230B1/en active IP Right Grant
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014077573A2 (en) * | 2012-11-13 | 2014-05-22 | 엘지전자 주식회사 | Method and apparatus for processing video signals |
WO2014077573A3 (en) * | 2012-11-13 | 2014-11-06 | 엘지전자 주식회사 | Method and apparatus for processing video signals |
US9936219B2 (en) | 2012-11-13 | 2018-04-03 | Lg Electronics Inc. | Method and apparatus for processing video signals |
Also Published As
Publication number | Publication date |
---|---|
KR101255230B1 (en) | 2013-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9877021B2 (en) | Moving picture coding device, moving picture coding method and moving picture coding program, and moving picture decoding device, moving picture decoding method and moving picture decoding program | |
US10412406B2 (en) | Method and apparatus for deriving temporal motion vector prediction | |
TWI684354B (en) | Dynamic image decoding device and dynamic image decoding method | |
US9131237B2 (en) | Method and apparatus for encoding and decoding motion vector by predicting motion vector according to mode | |
KR101782929B1 (en) | Method and apparatus for processing a video signal | |
KR101174901B1 (en) | Method and Apparatus for prediction of adaptive motion vector in multi-viewpoint image | |
US8204127B2 (en) | Method and apparatus for encoding and decoding image by using multiple reference-based motion prediction | |
US20090245376A1 (en) | Method and apparatus for encoding/decoding motion vector information | |
TWI580263B (en) | Dynamic image decoding device, dynamic image decoding method and dynamic image decoding program | |
JP2010516158A (en) | Multi-view video encoding and decoding method and apparatus | |
JP5593440B2 (en) | Motion vector prediction method | |
JP2016027725A (en) | Moving picture decoding device, moving picture decoding method and moving picture decoding program, and receiving device, receiving method and receiving program | |
KR101255230B1 (en) | Method and Apparatus for prediction of adaptive motion vector in multi-viewpoint image | |
KR101367815B1 (en) | Method for decoding video data based on prediction of an adaptive motion vector | |
TW201251473A (en) | Video decoding device, video decoding method, and video decoding program | |
KR20180117095A (en) | Coding method, decoding method, and apparatus for video global disparity vector. | |
Nam et al. | Novel motion prediction for multi-view video coding using global disparity |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
A107 | Divisional application of patent | ||
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: 20160330 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170327 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180406 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190325 Year of fee payment: 7 |