KR20080007177A - A method and apparatus for processing a video signal - Google Patents

A method and apparatus for processing a video signal Download PDF

Info

Publication number
KR20080007177A
KR20080007177A KR1020070070675A KR20070070675A KR20080007177A KR 20080007177 A KR20080007177 A KR 20080007177A KR 1020070070675 A KR1020070070675 A KR 1020070070675A KR 20070070675 A KR20070070675 A KR 20070070675A KR 20080007177 A KR20080007177 A KR 20080007177A
Authority
KR
South Korea
Prior art keywords
motion vector
picture
list
video signal
image block
Prior art date
Application number
KR1020070070675A
Other languages
Korean (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 KR20080007177A publication Critical patent/KR20080007177A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Abstract

A method and an apparatus for processing a video signal are provided to improve the efficiency of signal processing by predicting movement information through spatial correlation of image sequence and improve the restoring ratio due to calculating the movement information similar to the movement information of the block. A video signal processing method comprises a step of determining one of a list 0 disparity vector and a list 1 disparity vector of an image block, co-located with respect to a pair prediction image block, as a disparity vector for inducing disparity vectors of the pair prediction image block. A picture, indicated by list 0 disparity vector or the list 1 disparity vector, includes a picture of a view different from the pair prediction image block.

Description

비디오 신호 처리 방법 및 장치{A method and apparatus for processing a video signal}A method and apparatus for processing a video signal

본 발명은 비디오 신호의 처리 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for processing a video signal.

압축 부호화란 디지털화한 정보를 통신 회선을 통해 전송하거나, 저장 매체에 적합한 형태로 저장하는 일련의 신호 처리 기술을 의미한다. 압축 부호화의 대상에는 음성, 영상, 문자 등의 대상이 존재하며, 특히 영상을 대상으로 압축 부호화를 수행하는 기술을 비디오 영상 압축이라고 일컫는다. 비디오 영상의 일반적인 특징은 공간적 중복성, 시간적 중복성을 지니고 있는 점에 특징이 있다. 더 나아가 한 대 이상의 카메라를 이용하여 다양한 시점을 사용자에게 제공하는 3차원(3D) 영상처리의 한 분야로서 다시점 비디오(Multi-view video) 영상이 있다. 이러한 다시점 비디오 영상은 시점들 사이에 높은 상관 관계를 가지고 있기 때문에 시점들 사이의 공간적 예측을 통해서 중복된 정보를 제거할 수 있다. 따라서, 시점들 사이의 예측을 효율적으로 수행하기 위한 다양한 압축 기술이 필요하다.Compression coding refers to a series of signal processing techniques that transmit digitized information through a communication line or store the data in a form suitable for a storage medium. The object of compression encoding includes objects such as voice, video, text, and the like. In particular, a technique of performing compression encoding on an image is called video image compression. The general feature of the video image is that it has spatial redundancy and temporal redundancy. Furthermore, there is a multi-view video image as a field of three-dimensional (3D) image processing that provides a user with various viewpoints using one or more cameras. Since such multi-view video images have a high correlation between viewpoints, redundant information can be removed through spatial prediction between viewpoints. Therefore, various compression techniques are needed to efficiently perform prediction between viewpoints.

본 발명의 목적은 다시점 영상 데이터에 대하여 효율적으로 처리하는 방법 및 장치를 제공하는데 있다.An object of the present invention is to provide a method and apparatus for efficiently processing multi-view image data.

본 발명의 다른 목적은 비디오 신호의 코딩 정보를 예측하는 방법을 제공함으로써 비디오 신호를 효율적으로 처리하고자 함에 있다.Another object of the present invention is to efficiently process a video signal by providing a method for predicting coding information of the video signal.

본 발명의 또 다른 목적은 움직임 정보를 예측하는 방법을 제공함으로써 비디오 신호를 효율적으로 처리하고자 함에 있다.Another object of the present invention is to efficiently process a video signal by providing a method for predicting motion information.

상기 목적을 달성하기 위하여 본 발명은 쌍예측 이미지 블록에 대하여 동일 위치에 있는 이미지 블록의 list 0 움직임 벡터와 list 1 움직임 벡터 중 하나를 상기 쌍예측 이미지 블록의 움직임 벡터들을 유도하기 위한 움직임 벡터로서 결정하는 단계를 포함하되, 상기 list 0 움직임 벡터 또는 list 1 움직임 벡터가 가리키는 픽쳐는 상기 쌍예측 이미지 블록과 다른 시점에 있는 픽쳐를 포함하는 것을 특징으로 하는 비디오 신호 처리 방법을 제공한다.In order to achieve the above object, the present invention determines one of the list 0 motion vector and the list 1 motion vector of the image block at the same position with respect to the bi-prediction image block as a motion vector for deriving the motion vectors of the bi-prediction image block. And the picture indicated by the list 0 motion vector or the list 1 motion vector comprises a picture at a different point of view than the bi-prediction image block.

또한, 본 발명은 결정된 움직임 벡터가 다른 시점에 있는 픽쳐를 가리키는 경우, 카메라 배열에 따른 위치 차이를 나타내는 움직임 벡터를 카메라 정보에 의해 유도하는 것을 특징으로 하는 비디오 신호 처리 방법을 제공한다.In addition, the present invention provides a video signal processing method characterized in that when the determined motion vector points to a picture at a different point in time, a motion vector indicating a position difference according to a camera arrangement is derived by camera information.

본 발명에 따르면, 영상 시퀀스의 시간적, 공간적 상관 관계를 이용하여 움직임 정보를 예측함으로써 신호 처리 효율을 높일 수 있다. 또한 현재 블록과 상관 관계가 높은 픽쳐의 코딩 정보를 이용하여 현재 블록의 코딩 정보를 예측함으로써 보다 정확하게 예측이 가능하고, 그에 따른 오차값 전송량이 감소하게 되어 효율적인 코딩을 수행할 수 있다. 그리고, 현재 블록의 움직임 정보가 전송되지 않더라도, 현재 블록의 움직임 정보와 매우 유사한 움직임 정보를 산출할 수 있기 때문에 복원율이 향상되는 효과가 있다. 또한, 카메라 정보를 이용함으로서 보다 정확하게 예측이 가능하고, 그에 따른 데이터 전송량이 감소할 수 있어 효율적인 코딩을 수행할 수 있다.According to the present invention, signal processing efficiency can be improved by predicting motion information using temporal and spatial correlation of an image sequence. In addition, by predicting coding information of a current block by using coding information of a picture having a high correlation with the current block, prediction can be performed more accurately, and an error value transmission amount is reduced accordingly, thereby enabling efficient coding. And even if the motion information of the current block is not transmitted, since the motion information very similar to the motion information of the current block can be calculated, the reconstruction rate is improved. In addition, by using the camera information can be predicted more accurately, and the amount of data transmission can be reduced accordingly to perform efficient coding.

비디오 신호 데이터를 압축 부호화하는 기술은 공간적 중복성, 시간적 중복성, 스케일러블한 중복성, 시점간 존재하는 중복성을 고려하고 있다. 또한, 이러한 압축 부호화 과정에서 시점 간 존재하는 상호 중복성을 고려하여 압축 코딩을 할 수 있다. 시점간 중복성을 고려하는 압축 코딩에 대한 기술은 본 발명의 실시예일 뿐이며, 본 발명의 기술적 사상은 시간적 중복성, 스케일러블한 중복성 등에도 적용될 수 있다.The compression coding technique of video signal data considers spatial redundancy, temporal redundancy, scalable redundancy, and redundancy existing between views. In this compression encoding process, compression coding may be performed in consideration of mutual redundancy existing between views. The compression coding technique considering the inter-view redundancy is only an embodiment of the present invention, and the technical idea of the present invention may be applied to temporal redundancy, scalable redundancy, and the like.

도 1은 본 발명이 적용되는 비디오 신호 디코딩 장치의 개략적인 블록도를 나타낸다. 1 is a schematic block diagram of a video signal decoding apparatus to which the present invention is applied.

상기 디코딩 장치는 크게 파싱부(100), 엔트로피 디코딩부(200), 역양자화/역변환부(300), 인트라 예측부(400), 디블록킹 필터부(500), 복호 픽쳐 버퍼부(600), 인터 예측부(700) 등을 포함한다. 그리고, 인터 예측부(700)는 조명 차분 예측부(710), 조명 보상부(720), 움직임 보상부(730) 등을 포함한다.The decoding apparatus includes a parsing unit 100, an entropy decoding unit 200, an inverse quantization / inverse transform unit 300, an intra prediction unit 400, a deblocking filter unit 500, a decoded picture buffer unit 600, Inter prediction unit 700 and the like. The inter predictor 700 includes an illumination difference predictor 710, an illumination compensator 720, a motion compensator 730, and the like.

파싱부(100)에서는 수신된 비디오 영상을 복호하기 위하여 NAL 단위로 파싱 을 수행한다. 일반적으로 하나 또는 그 이상의 시퀀스 파라미터 셋과 픽쳐 파라미터 셋이 슬라이스 헤더와 슬라이스 데이터가 디코딩되기 전에 디코더로 전송된다. 이 때 NAL 헤더 영역 또는 NAL 헤더의 확장 영역에는 여러 가지 속성 정보가 포함될 수 있다. MVC는 기존 AVC 기술에 대한 추가 기술이므로 무조건적으로 추가하기보다는 MVC 비트스트림인 경우에 한해 여러 가지 속성 정보들을 추가하는 것이 더 효율적일 수 있다. 예를 들어, 상기 NAL 헤더 영역 또는 NAL 헤더의 확장 영역에서 MVC 비트스트림인지 여부를 식별할 수 있는 플래그 정보를 추가할 수 있다. 상기 플래그 정보에 따라 입력된 비트스트림이 다시점 영상 코딩된 비트스트림일 경우에 한해 다시점 영상에 대한 속성 정보들을 추가할 수 있다. 예를 들어, 상기 속성 정보들은 시간적 레벨(temporal level) 정보, 시점 레벨(view level) 정보, 인터 뷰 픽쳐 그룹 식별 정보, 시점 식별(view identification) 정보 등을 포함할 수 있다. The parsing unit 100 performs parsing on a NAL basis to decode the received video image. In general, one or more sequence parameter sets and picture parameter sets are transmitted to the decoder before the slice header and slice data are decoded. In this case, various attribute information may be included in the NAL header area or the extension area of the NAL header. Since MVC is an additional technology to the existing AVC technology, it may be more efficient to add various attribute information only in the case of MVC bitstream rather than unconditionally adding. For example, flag information for identifying whether an MVC bitstream is included in the NAL header region or an extension region of the NAL header may be added. Attribute information about a multiview image may be added only when the input bitstream is a multiview image coded bitstream according to the flag information. For example, the attribute information may include temporal level information, view level information, inter-view picture group identification information, view identification information, and the like.

파싱된 비트스트림은 엔트로피 디코딩부(200)를 통하여 엔트로피 디코딩되고, 각 매크로브록의 계수, 움직임 벡터 등이 추출된다. 역양자화/역변환부(300)에서는 수신된 양자화된 값에 일정한 상수를 곱하여 변환된 계수값을 획득하고, 상기 계수값을 역변환하여 화소값을 복원하게 된다. 상기 복원된 화소값을 이용하여 인트라 예측부(400)에서는 현재 픽쳐 내의 디코딩된 샘플로부터 화면내 예측을 수행하게 된다. 한편, 디블록킹 필터부(500)에서는 블록 왜곡 현상을 감소시키기 위해 각각의 코딩된 매크로블록에 적용된다. 필터는 블록의 가장자리를 부드럽게 하여 디코딩된 픽쳐의 화질을 향상시킨다. 필터링 과정의 선택은 경계 세기(boundary strenth)와 경계 주위의 이미지 샘플의 변화(gradient)에 의해 좌우된다. 필터링을 거친 픽쳐들은 출력되거나 참조 픽쳐로 이용하기 위해 복호 픽쳐 버퍼부(600)에 저장된다. The parsed bitstream is entropy decoded by the entropy decoding unit 200, and coefficients, motion vectors, and the like of each macroblock are extracted. The inverse quantization / inverse transform unit 300 multiplies the received quantized value by a constant constant to obtain a transformed coefficient value, and inversely transforms the coefficient value to restore the pixel value. The intra prediction unit 400 performs intra prediction from the decoded samples in the current picture by using the reconstructed pixel value. Meanwhile, the deblocking filter unit 500 is applied to each coded macroblock in order to reduce block distortion. The filter smoothes the edges of the block to improve the quality of the decoded picture. The choice of filtering process depends on the boundary strength and the gradient of the image samples around the boundary. The filtered pictures are output or stored in the decoded picture buffer unit 600 for use as a reference picture.

복호 픽쳐 버퍼부(Decoded Picture Buffer unit)(600)에서는 화면간 예측을 수행하기 위해서 이전에 코딩된 픽쳐들을 저장하거나 개방하는 역할 등을 수행한다. 이 때 복호 픽쳐 버퍼부(600)에 저장하거나 개방하기 위해서 각 픽쳐의 frame_num 과 POC(Picture Order Count)를 이용하게 된다. 따라서, MVC에 있어서 상기 이전에 코딩된 픽쳐들 중에는 현재 픽쳐와 다른 시점에 있는 픽쳐들도 있으므로, 이러한 픽쳐들을 참조 픽쳐로서 활용하기 위해서는 상기 frame_num 과 POC 뿐만 아니라 픽쳐의 시점을 식별하는 시점 정보도 함께 이용할 수 있다. 상기와 같이 관리되는 참조 픽쳐들은 인터 예측부(700)에서 이용될 수 있다.The decoded picture buffer unit 600 stores or opens previously coded pictures in order to perform inter prediction. In this case, in order to store or open the decoded picture buffer unit 600, frame_num and POC (Picture Order Count) of each picture are used. Therefore, some of the previously coded pictures in MVC have pictures that are different from the current picture. Therefore, in order to utilize these pictures as reference pictures, not only the frame_num and the POC but also the view information for identifying the view point of the picture are included. It is available. The reference pictures managed as described above may be used by the inter prediction unit 700.

인터 예측부(700)에서는 복호 픽쳐 버퍼부(600)에 저장된 참조 픽쳐를 이용하여 화면간 예측을 수행한다. 인터 코딩된 매크로블록은 매크로블록 파티션으로 나누어질 수 있으며, 각 매크로블록 파티션은 하나 또는 두개의 참조 픽쳐로부터 예측될 수 있다. 상기 인터 예측부(700)는 조명 차분 예측부(710), 조명 보상부(720) 및 움직임 보상부(730) 등을 포함한다.The inter prediction unit 700 performs inter prediction using a reference picture stored in the decoded picture buffer unit 600. Inter-coded macroblocks can be divided into macroblock partitions, where each macroblock partition can be predicted from one or two reference pictures. The inter predictor 700 includes an illumination difference predictor 710, an illumination compensator 720, a motion compensator 730, and the like.

입력된 비트스트림이 다시점 영상에 해당되는 경우, 각 시점 영상(view sequence)들은 각기 다른 카메라에서 취득된 영상들이기 때문에 카메라의 내외적 요인으로 인하여 조명(illumination) 차이가 발생하게 된다. 이를 방지하기 위해서 조명 보상부(720)에서는 조명 보상(illumination compensation)을 수행하게 된다. 조명 보상을 수행함에 있어서, 비디오 신호의 일정 계층에 대한 조명 보상 수행여 부를 나타내는 플래그 정보를 이용할 수 있다. 예를 들어, 해당 슬라이스 또는 해당 매크로블록의 조명 보상 수행여부를 나타내는 플래그 정보를 이용하여 조명 보상을 수행할 수 있다. 또한, 상기 플래그 정보를 이용하여 조명 보상을 수행함에 있어서, 여러 가지 매크로블록의 타입(예를 들어, 인터16×16모드 또는 B-skip모드 또는 직접 모드 등)에 적용될 수 있다.When the input bitstream corresponds to a multi-view image, since the view sequences are images obtained from different cameras, illumination differences may occur due to internal and external factors of the camera. In order to prevent this, the illumination compensation unit 720 performs illumination compensation. In performing lighting compensation, flag information indicating whether lighting compensation is performed on a predetermined layer of a video signal may be used. For example, lighting compensation may be performed using flag information indicating whether lighting of the slice or the macroblock is performed. In addition, in performing lighting compensation using the flag information, it may be applied to various types of macroblocks (eg, inter16 × 16 mode, B-skip mode, or direct mode).

움직임 보상부(730)에서는 엔트로피 디코딩부(200)로부터 전송된 정보들을 이용하여 현재 블록의 움직임을 보상한다. 비디오 신호로부터 현재 블록에 이웃하는 블록들의 움직임 벡터를 추출하고, 상기 현재 블록의 움직임 벡터 예측값을 획득한다. 상기 획득된 움직임 벡터 예측값과 상기 비디오 신호로부터 추출되는 차분 벡터를 이용하여 현재 블록의 움직임을 보상한다. 또한, 이러한 움직임 보상은 하나의 참조 픽쳐를 이용하여 수행될 수도 있고, 복수의 픽쳐를 이용하여 수행될 수도 있다. 다시점 비디오 코딩에 있어서, 현재 픽쳐가 다른 시점에 있는 픽쳐들을 참조하게 되는 경우, 상기 복호 픽쳐 버퍼부(600)에 저장되어 있는 시점간 예측을 위한 참조 픽쳐 리스트에 대한 정보를 이용하여 움직임 보상을 수행할 수 있다. 또한, 그 픽쳐의 시점을 식별하는 시점 정보를 이용하여 움직임 보상을 수행할 수도 있다. 또한, 직접 예측 모드(direct mode)는 부호화가 끝난 블록의 움직임 정보로부터 현재 블록의 움직임 정보를 예측하는 부호화 모드이다. 이러한 방법은 움직임 정보를 부호화할 때 필요한 비트수가 절약되기 때문에 압축 효율이 향상된다. 예를 들어, 시간 직접 모드(temporal direct mode)는 시간 방향의 움직임 정보 상관도를 이용하여 현재 블록의 움직임 정보를 예측하게 된다. 상기 시간 직접 모드는 서로 다른 움직임을 포함하고 있는 영상에서 그 움직임의 속도가 일정할 때 효과가 있다. 이러한 시간 직접 모드가 다시점 비디오 코딩에서 이용되는 경우, 시점간의 움직임 벡터를 고려하여야 한다. 이에 대해서는 도 2 내지 도 8에서 상세히 설명하도록 한다.The motion compensator 730 compensates for the motion of the current block by using the information transmitted from the entropy decoder 200. A motion vector of blocks neighboring the current block is extracted from the video signal, and a motion vector prediction value of the current block is obtained. The motion of the current block is compensated by using the obtained motion vector prediction value and the difference vector extracted from the video signal. In addition, such motion compensation may be performed using one reference picture or may be performed using a plurality of pictures. In multi-view video coding, when a current picture refers to pictures at different views, motion compensation is performed using information on a reference picture list for inter-view prediction stored in the decoded picture buffer unit 600. Can be done. In addition, motion compensation may be performed using viewpoint information identifying a viewpoint of the picture. In addition, the direct prediction mode is a coding mode for predicting motion information of a current block from motion information of a coded block. This method improves compression efficiency because the number of bits necessary for encoding motion information is saved. For example, in the temporal direct mode, the motion information of the current block is predicted using the motion information correlation in the time direction. The direct temporal mode is effective when the speed of the movement is constant in an image including different movements. When this temporal direct mode is used in multi-view video coding, the inter-view motion vector must be taken into account. This will be described in detail with reference to FIGS. 2 to 8.

공간 직접 모드(spatial direct mode)는 공간 방향의 움직임 정보 상관도를 이용하여 현재 블록의 움직임 정보를 예측하게 된다. 상기 공간 직접 모드는 서로 같은 움직임을 포함하고 있는 영상에서 그 움직임의 속도가 변할 때 효과가 있다.In the spatial direct mode, the motion information of the current block is predicted by using the motion information correlation in the spatial direction. The spatial direct mode is effective when the speed of the motion changes in an image including the same motion.

상기와 같은 과정을 통해 인터 예측된 픽쳐들과 인트라 예측된 픽쳐들은 예측 모드에 따라 선택되어 현재 픽쳐를 복원하게 된다. 이하에서는 비디오 신호의 효율적인 디코딩 방법을 제공하기 위한 다양한 실시예들을 설명하도록 한다.Through the above process, the inter predicted pictures and the intra predicted pictures are selected according to the prediction mode to reconstruct the current picture. Hereinafter, various embodiments for providing an efficient decoding method of a video signal will be described.

도 2는 본 발명이 적용되는 실시예로서 시점 방향을 고려한 움직임 벡터 예측 방법을 설명하기 위해 나타낸 것이다.2 is a view illustrating a motion vector prediction method in consideration of a view direction as an embodiment to which the present invention is applied.

직접 예측 모드(direct prediction mode)는 부호화가 끝난 블록의 움직임 정보로부터 현재 블록의 움직임 정보를 예측하는 모드를 나타낸다. 예를 들어, 직접 예측 모드에서는 List1 레퍼런스 픽쳐 중 가장 작은 참조 번호를 가지는 픽쳐를 앵커 픽쳐라고 정의할 수 있다. 픽쳐 출력 순서상 현재 픽쳐의 역방향으로 가장 가까운 참조 픽쳐가 앵커 픽쳐가 될 수 있다. 그리고, 상기 현재 블록과 같은 공간 위치(co-located)에 있는 앵커 픽쳐의 블록을 앵커 블록이라고 정의할 수 있다. 시간 직접 예측 모드에서는 상기 앵커 블록의 움직임 정보를 이용하여 현재 블록의 움직임 정보를 예측할 수 있다. 상기 앵커 블록의 List0 방향의 움직임 벡터를 mvCol 이라 정의할 수 있다. 이때, 상기 앵커 블록의 List0 방향의 움직임 벡터가 없고, List1 방향의 움직임 벡터가 있다면 List1 방향의 움직임 벡터를 mvCol 로 할 수 있다. 여기서, B픽쳐의 경우, 시간적 또는 공간적 전후에 상관없이 임의의 두 장을 참조 픽쳐로 사용할 수 있는데, 이 때 이용되는 예측을 List0 예측, List1 예측이라 한다. 예를 들어, List0 예측은 포워드 방향에 대한 예측을, List1 예측은 백워드 방향에 대한 예측을 의미할 수 있다.The direct prediction mode indicates a mode for predicting motion information of the current block from motion information of the encoded block. For example, in the direct prediction mode, a picture having the smallest reference number among List1 reference pictures may be defined as an anchor picture. The reference picture nearest to the current picture in the picture output order may be the anchor picture. The block of the anchor picture at the same co-located position as the current block may be defined as an anchor block. In the direct temporal prediction mode, the motion information of the current block may be predicted using the motion information of the anchor block. The motion vector in the List0 direction of the anchor block may be defined as mvCol. At this time, if there is no motion vector in the List0 direction of the anchor block and there is a motion vector in the List1 direction, the motion vector in the List1 direction may be mvCol. Here, in the case of the B picture, any two chapters may be used as reference pictures regardless of temporal or spatial front and back, and the prediction used at this time is called List0 prediction or List1 prediction. For example, List0 prediction may mean prediction for the forward direction, and List1 prediction may mean prediction for the backward direction.

시간 직접 예측 모드에서 현재 블록의 List0 참조 픽쳐는 상기 mvCol 이 참조하는 픽쳐가 되고, List1 참조 픽쳐는 앵커 픽쳐가 된다. 상기 앵커 블록이 화면내 부호화된 움직임 정보를 가지지 않는 경우 움직임 벡터의 크기는 0이 되고, 시간 직접 예측 모드의 List0 참조 픽쳐는 참조 픽쳐 번호가 0이 된다.In the temporal direct prediction mode, the List0 reference picture of the current block becomes the picture referenced by the mvCol, and the List1 reference picture becomes the anchor picture. When the anchor block does not have intra-picture coded motion information, the size of the motion vector is 0, and the reference picture number is 0 in List0 reference picture in temporal direct prediction mode.

또한, 움직임 벡터 mvCol로부터 List0의 움직임벡터 mvL0와 List1의 움직임 벡터 mvL1을 구할 수 있다. 참조 픽쳐, 현재 픽쳐, 그리고 앵커 픽쳐 사이에서 움직임의 속도가 일정하다고 가정하면, mvL0 와 mvL1의 크기는 참조 픽쳐, 현재 픽쳐, 앵커 픽쳐의 시간 거리에 비례하게 된다. 따라서 비례배분에 의해서 상기 mvL0와 mvL1 을 구할 수 있다. 예를 들어, 참조 픽쳐와 현재 픽쳐의 간격, 그리고 참조 픽쳐와 앵커 픽쳐의 간격을 이용해서 mvL0와 mvL1을 구할 수 있다.Further, the motion vector mvL0 of List0 and the motion vector mvL1 of List1 can be obtained from the motion vector mvCol. Assuming that the velocity of motion is constant between the reference picture, the current picture, and the anchor picture, the sizes of mvL0 and mvL1 are proportional to the time distances of the reference picture, the current picture, and the anchor picture. Therefore, mvL0 and mvL1 can be obtained by proportional allocation. For example, mvL0 and mvL1 can be obtained by using a gap between the reference picture and the current picture and a gap between the reference picture and the anchor picture.

본 발명의 다른 실시예로서, 다시점 비디오 코딩에 있어서 시점간 예측을 수행하게 되는 경우 시간 직접 예측 모드를 이용하면 압축 효율을 향상시킬 수 있다. 즉, 앵커 블록의 List0 방향 참조 픽쳐가 현재 픽쳐의 시점과 다른 시점에 있는 픽쳐일 때 적용될 수 있다. 예를 들어, 상기 도 2를 살펴보면, 먼저 현재 픽쳐를 C, 앵커 픽쳐를 D, 앵커 블록의 움직임 벡터가 참조하는 다른 시점의 픽쳐를 A, 상기 앵커 블록의 움직임 벡터가 참조하는 픽쳐와 동일한 시간에 있고 현재 픽쳐의 시점과 동일한 시점에 있는 픽쳐를 B라고 하자. 상기 픽쳐 B,C,D는 동일한 시점(Va)에 존재하고, 각각 시간 Ta, Tb, Tc 상에 존재한다. 상기 픽쳐 A는 상기 픽쳐 B,C,D와 다른 시점(Vb)에 존재하고, 시간 Ta 상에 존재한다.As another embodiment of the present invention, when performing inter-view prediction in multi-view video coding, compression efficiency may be improved by using a temporal direct prediction mode. That is, it may be applied when the List0 direction reference picture of the anchor block is a picture that is different from the viewpoint of the current picture. For example, referring to FIG. 2, first, C is the current picture, D is the anchor picture, A is a picture of another viewpoint referred to by the motion vector of the anchor block, and A is the same time as the picture referenced by the motion vector of the anchor block. Let B be a picture at the same time as the current picture. The pictures B, C, and D are present at the same time Va, respectively, on time Ta, Tb, and Tc. The picture A is present at a time point Vb different from the pictures B, C, and D, and is on time Ta.

이 때 앵커 블록의 List0 방향의 움직임 벡터를 mvCol 이라고 정의할 때, 상기 mvCol이 참조하는 픽쳐(A)는 현재 픽쳐(C)의 시점(Va)과 다른 시점(Vb)에 있는 픽쳐(A)일 수 있다. 또한, 상기 픽쳐(A)는 다른 시간대에 존재할 수 있고, 또는 동일 시간대에 존재할 수도 있다. 동일 시간대에 존재하는 경우에 상기 움직임 벡터는 글로벌 움직임 벡터를 포함할 수 있다. 상기에서 설명한 바와 같이, 앵커 픽쳐란 픽쳐 출력 순서상 현재 픽쳐의 역방향으로 가장 가까운 참조 픽쳐로 정의할 수 있다. 그리고, 현재 블록과 동일한 위치(co-located)에 있는 앵커 픽쳐의 블록을 앵커 블록이라고 정의할 수 있다. 여기서, 상기 동일 위치(co-located)의 블록이란, 동일 픽쳐에 존재하는 현재 블록에 인접한 블록을 의미할 수 있고, 또는 다른 픽쳐에 포함된 상기 현재 블록과 같은 위치에 존재하는 블록일 수도 있다. 예를 들어, 다른 시점에 있는 다른 픽쳐인 경우 공간적 동일 위치(spatial co-located)의 블록이라고 할 수 있고, 동일 시점에 있는 다른 픽쳐의 경우에는 시간적 동일 위치(temporal co-located)의 블록이라고 할 수도 있다. In this case, when defining the motion vector in the List0 direction of the anchor block as mvCol, the picture A referred to by the mvCol is the picture A at a viewpoint Vb different from the viewpoint Va of the current picture C. Can be. In addition, the picture A may exist in different time zones or may exist in the same time zone. When present in the same time zone, the motion vector may include a global motion vector. As described above, the anchor picture may be defined as a reference picture that is closest to the reverse direction of the current picture in the picture output order. In addition, a block of an anchor picture that is co-located with the current block may be defined as an anchor block. Here, the co-located block may mean a block adjacent to a current block existing in the same picture or may be a block existing at the same position as the current block included in another picture. For example, another picture at a different point in time may be referred to as a spatial co-located block, and another picture at a same point in time may be referred to as a temporal co-located block. It may be.

상기 mvCol이 참조하는 픽쳐(A)와 동일한 시간(Ta)에 있고, 현재 픽쳐의 시점(Va)과 동일한 시점에 있는 픽쳐(B)를 상기 앵커 블록의 List0 참조 픽쳐라 할 수 있다. 상기 픽쳐 A와 상기 픽쳐 B는 서로 다른 시점에 존재하기 때문에 시점간의 변이 차이가 있을 수 있다. 이를 변이 벡터(disparity vector) 또는 제 1 움직임 벡터라 정의한다. 상기 변이 벡터는 서로 다른 두 시점 사이의 객체간 또는 픽쳐간 변이 차이를 의미할 수 있으며, 또는 글로벌 변이 벡터(global disparity vector)를 의미할 수도 있다. 여기서, 움직임 벡터는 일부 영역(예: 매크로블록, 블록, 픽셀 등)에 대응될 수 있고, 상기 글로벌 변이 벡터는 상기 일부 영역을 포함하는 전체 영역에 대응되는 움직임 벡터를 의미할 수 있다. 상기 전체 영역은 매크로블록, 슬라이스, 픽쳐, 또는 시퀀스에 대응될 수도 있다. 경우에 따라서는, 픽쳐내 하나 이상의 객체(object) 영역 및 배경에 각각 대응될 수도 있다.The picture B at the same time Ta as the picture A referred to by the mvCol and at the same time as the view Va of the current picture may be referred to as a List0 reference picture of the anchor block. Since the picture A and the picture B exist at different viewpoints, there may be a difference between the viewpoints. This is defined as a disparity vector or a first motion vector. The disparity vector may mean a disparity difference between objects or pictures between two different viewpoints, or may mean a global disparity vector. Here, the motion vector may correspond to a partial region (for example, a macroblock, a block, a pixel, etc.), and the global disparity vector may mean a motion vector corresponding to the entire region including the partial region. The entire area may correspond to a macroblock, slice, picture, or sequence. In some cases, the image may correspond to one or more object areas and a background in the picture.

따라서, 다시점 비디오 코딩에서 시간 직접 예측 모드를 이용하기 위해서, 앵커 블록의 List0 방향의 움직임 벡터인 mvCol에 상기 변이 벡터를 적용할 수 있다. 이때, 상기 변이 벡터를 적용한, 상기 앵커 블록의 List0 방향의 움직임 벡터를 mvCol' 로 정의할 수 있다. 그리고, 상기 움직임 벡터 mvCol'로부터 현재 블록의 List0 방향 움직임벡터 mvL0와 현재 블록의 List1 방향 움직임 벡터 mvL1을 구할 수 있다. 마찬가지로, 참조 픽쳐(B), 현재 픽쳐(C), 그리고 앵커 픽쳐(D) 사이에서 움직임의 속도가 일정하다고 가정하면, mvL0 와 mvL1의 크기는 참조 픽쳐(B), 현재 픽쳐(C), 앵커 픽쳐(D)의 시간 거리에 비례하게 된다. 따라서 비례배분에 의해서 상기 mvL0와 mvL1 을 구할 수 있다. 예를 들어, 참조 픽쳐와 현재 픽쳐의 시간 간격(Tb - Ta), 그리고 참조 픽쳐와 앵커 픽쳐의 시간 간격(Tc - Ta)을 이용해서 mvL0와 mvL1을 구할 수 있다. 이에 대해서는 이하 도 3에서 상세히 설명하도록 한다.Therefore, in order to use the direct temporal prediction mode in multi-view video coding, the disparity vector may be applied to mvCol, which is a motion vector in the List0 direction of the anchor block. In this case, the motion vector in the List0 direction of the anchor block to which the disparity vector is applied may be defined as mvCol '. The List0 direction motion vector mvL0 of the current block and the List1 direction motion vector mvL1 of the current block can be obtained from the motion vector mvCol '. Similarly, assuming that the velocity of motion is constant between the reference picture (B), the current picture (C), and the anchor picture (D), the magnitudes of mvL0 and mvL1 are the reference picture (B), the current picture (C), and the anchor. It is proportional to the time distance of the picture D. Therefore, mvL0 and mvL1 can be obtained by proportional allocation. For example, mvL0 and mvL1 can be obtained using the time intervals Tb-Ta of the reference picture and the current picture and the time intervals Tc-Ta of the reference picture and the anchor picture. This will be described in detail later with reference to FIG. 3.

도 3은 본 발명이 적용되는 다른 실시예로서, 시점 방향을 고려하여 현재 블록의 움직임 벡터를 예측하는 방법을 설명하기 위해 나타낸 것이다.3 is a diagram for describing a method of predicting a motion vector of a current block in consideration of a view direction as another embodiment to which the present invention is applied.

시간 직접 예측 모드가 이용되는 경우에, 상기 도 2에서 살펴본 바와 같이 시점 방향이 고려된 움직임 벡터 mvCol'로부터 현재 블록의 List0 방향 움직임벡터 mvL0와 현재 블록의 List1 방향 움직임 벡터 mvL1을 구할 수 있다. 상기 도 3은 상기 도 2를 시간축에서 바라본 도면이다. 이하 다양한 실시예를 들어보기로 한다.When the direct temporal prediction mode is used, as shown in FIG. 2, the list vector direction motion vector mvL0 of the current block and the list1 direction motion vector mvL1 of the current block can be obtained from the motion vector mvCol 'considering the view direction. FIG. 3 is a view of FIG. 2 from the time axis. Hereinafter, various embodiments will be described.

1) 앵커 블록의 List0 레퍼런스 인덱스가 장기 참조 픽쳐를 참조하고 있는 경우를 예로 들어본다.1) For example, the List0 reference index of an anchor block refers to a long-term reference picture.

이때, 상기 앵커 블록의 움직임 벡터(mvCol)가 참조하는 List0 참조 픽쳐가 현재 블록과 다른 시점에 있는 픽쳐라면, 시점 간의 변이 차이인 변이 벡터가 적용될 수 있다. 그리고, 앵커 블록의 List0 레퍼런스 인덱스가 장기 참조 픽쳐를 참조하고 있기 때문에, 상대적으로 현재 픽쳐와 앵커 픽쳐와의 시간 거리는 0 에 가깝다고 볼 수 있다. 따라서, 아래 수학식 1을 통해 mvL0와 mvL1을 구할 수 있다.In this case, if the List0 reference picture referred to by the motion vector mvCol of the anchor block is at a different view from the current block, a disparity vector that is a disparity difference between views may be applied. In addition, since the List0 reference index of the anchor block refers to the long-term reference picture, the time distance between the current picture and the anchor picture is relatively close to zero. Therefore, mvL0 and mvL1 can be obtained through Equation 1 below.

mvL0 = mvCol + dv = mvCol'mvL0 = mvCol + dv = mvCol '

mvL1 = 0mvL1 = 0

그러나, 상기 앵커 블록의 움직임 벡터(mvCol)가 참조하는 List0 참조 픽쳐가 현재 블록과 동일한 시점에 있는 픽쳐라면, 시점 간의 변이 차이인 변이 벡터가 적용되지 않아도 된다. 이러한 경우에는 아래 수학식 2를 통해 mvL0와 mvL1을 구할 수 있다.However, if the List0 reference picture referenced by the motion vector mvCol of the anchor block is at the same view as the current block, the disparity vector, which is the difference between the views, may not be applied. In this case, mvL0 and mvL1 can be obtained through Equation 2 below.

mvL0 = mvColmvL0 = mvCol

mvL1 = 0mvL1 = 0

2) 앵커 블록의 List0 레퍼런스 인덱스가 장기 참조 픽쳐를 참조하고 있지 않은 경우를 예로 들어본다.2) For example, the List0 reference index of the anchor block does not refer to the long-term reference picture.

이때, 상기 앵커 블록의 움직임 벡터(mvCol)가 참조하는 List0 참조 픽쳐가 현재 블록과 다른 시점에 있는 픽쳐라면, 시점 간의 변이 차이인 변이 벡터가 적용될 수 있다. 상기 앵커 블록의 List0 레퍼런스 인덱스가 장기 참조 픽쳐를 참조하고 있지 않기 때문에 시간 거리의 비례 관계를 이용하여 mvL0와 mvL1을 구할 수 있다. 아래 수학식 3을 이용할 수 있다.In this case, if the List0 reference picture referred to by the motion vector mvCol of the anchor block is at a different view from the current block, a disparity vector that is a disparity difference between views may be applied. Since the List0 reference index of the anchor block does not refer to the long-term reference picture, mvL0 and mvL1 can be obtained using a proportional relationship of time distances. Equation 3 below may be used.

mvL0 = (mvCol + dv) * (tb/td) = mvCol' * (tb/td)mvL0 = (mvCol + dv) * (tb / td) = mvCol '* (tb / td)

mvL1 = - (mvCol +dv) * (td- tb) /td = mvL0 - (mvCol + dv)mvL1 =-(mvCol + dv) * (td- tb) / td = mvL0-(mvCol + dv)

= mvL0 - mvCol’     = mvL0-mvCol ’

그러나, 상기 앵커 블록의 움직임 벡터(mvCol)가 참조하는 List0 참조 픽쳐가 현재 블록과 동일한 시점에 있는 픽쳐라면, 시점 간의 변이 차이인 변이 벡터가 적용되지 않아도 된다. 이러한 경우에는 아래 수학식 4를 통해 mvL0와 mvL1을 구할 수 있다.However, if the List0 reference picture referenced by the motion vector mvCol of the anchor block is at the same view as the current block, the disparity vector, which is the difference between the views, may not be applied. In this case, mvL0 and mvL1 can be obtained through Equation 4 below.

mvL0 = mvCol * (tb/td)mvL0 = mvCol * (tb / td)

mvL1 = - mvCol * (td- tb) /td = mvL0 - mvColmvL1 =-mvCol * (td- tb) / td = mvL0-mvCol

상기에서 살펴본 바와 같이 상기 앵커 블록의 움직임 벡터(mvCol)가 다른 시점에 있는 픽쳐를 참조하고 있으나, 현재 픽쳐의 참조 픽쳐 리스트에는 상기 다른 시점에 있는 픽쳐가 들어있지 않을 수 있다. 이러한 경우 상기 다른 시점에 있는 참조 블록과 대응되는 블록, 예를 들어 동일한 시간상에 존재하고 현재 픽쳐와 동일한 시점에 있는 픽쳐의 블록을 이용할 수 있다. 이 때 변이 벡터를 이용하여 상기 대응 블록을 획득할 수 있다.As described above, although the motion vector mvCol of the anchor block refers to a picture at another point in time, the reference picture list of the current picture may not include the picture at the other point of view. In this case, a block corresponding to the reference block at the other time point, for example, a block of a picture present at the same time and at the same time point as the current picture may be used. In this case, the corresponding block may be obtained using the disparity vector.

그러나, 상기 앵커 블록의 움직임 벡터(mvCol)가 다른 시점에 있는 픽쳐를 참조하고 있으나 변이 벡터를 이용할 수 없는 경우에는 상기 변이 벡터를 이용하지 않고 mvL0와 mvL1을 구할 수 있다. 이러한 경우, 상기 수학식 1 내지 수학식 4에서 변이 벡터의 개념을 제외하면 동일한 방식으로 mvL0와 mvL1을 구할 수 있다. 다만, 상기 mvCol이 가리키는 참조 픽쳐가 아닌 현재 픽쳐와 동일 시점 상에 있는 픽쳐를 이용하게 되므로, 참조 픽쳐 번호가 달라질 수 있다.However, when the motion vector (mvCol) of the anchor block refers to a picture at a different point in time but the disparity vector is not available, mvL0 and mvL1 can be obtained without using the disparity vector. In this case, mvL0 and mvL1 may be obtained in the same manner except for the concept of the disparity vector in Equations 1 to 4. However, the reference picture number may be different because the picture that is on the same view as the current picture is used instead of the reference picture indicated by the mvCol.

또한, 본 발명이 적용되는 다른 실시예로서, 시점 방향을 고려하여 현재 블록의 움직임 벡터를 예측할 때, 카메라 정보를 이용할 수 있다. 이는 도 4 내지 도 5에서 상세히 설명하도록 한다. In addition, as another embodiment to which the present invention is applied, camera information may be used when predicting a motion vector of a current block in consideration of a view direction. This will be described in detail with reference to FIGS. 4 to 5.

도 4 및 도 5는 본 발명이 적용되는 실시예로서, 카메라 정보를 이용하여 현재 블록의 움직임 벡터를 예측하는 방법을 설명하기 위해 나타낸 것이다.4 and 5 illustrate an embodiment to which the present invention is applied to explain a method of predicting a motion vector of a current block using camera information.

도 4 및 도 5를 참조하면, 일반적으로 카메라들을 수평으로 배열해둔 상태에 서 촬영하기 때문에, 시점이 다른 픽쳐들간의 움직임 벡터(disparity vector)는 대체적으로 수평 방향(x방향)으로의 성분만이 존재한다. 여기서, 수평 방향의 움직임 벡터를 DVx라 하면, 이는 시점이 다른 픽쳐내 객체 및 배경의 움직임 차이에 의해 생긴다. 그러나 카메라들이 일직선상에 위치하지 않은 경우에는, 도 4 및 도 5에 나타난 바와 같이 에피폴라(epipolar line) 라인(실제 물체에서 같은 지점을 이은 선)(E1, E2, E3)이 평행하지 않기 때문에, 블록의 위치에 따라(특히 E1 이나 E3 부근의 블록에서는) 보다 정확한 움직임벡터를 획득하기 위해서는 수평 방향의 움직임 벡터뿐만 아니라 수직 방향(y방향)의 움직임 벡터도 고려해야 한다. 여기서, 수직 방향의 움직임 벡터를 DVy라 하면, 이는 카메라 배열에 따른 위치 차이에 의해 생긴다. 예를 들어, 도 4(a)에서의 현재 블록(cur)은 에피폴라 라인에서 벗어나 있는데 비해, 수평 방향의 성분을 갖는 움직임 벡터가 가리키는 블록(ref)은 도 4(b)에서는 에피폴라 라인 상에 존재하게 되므로 실제와 부합하지 않는다. 즉, 실제와 부합하는 대응 블록(ref)을 가리키는 움직임벡터(dv)를 획득하기 위해, 상기 수직 방향의 움직임벡터를 산출할 수 있다. 이때, 상기 수직 방향의 움직임벡터의 값은 블록마다 달라질 수 있다.4 and 5, since the cameras are generally photographed in a horizontally arranged state, a motion vector between pictures having different viewpoints generally has only a component in a horizontal direction (x direction). exist. Here, when the horizontal motion vector is DVx, it is caused by the motion difference between the object and the background in the picture having different viewpoints. However, when the cameras are not in a straight line, the epipolar line (the line following the same point in the real object) (E1, E2, E3) is not parallel as shown in Figs. 4 and 5. In order to obtain a more accurate motion vector according to the position of the block (particularly in the block near E1 or E3), the motion vector in the vertical direction (y direction) as well as the horizontal motion vector must be considered. Here, when the vertical motion vector is DVy, this is caused by the position difference according to the camera arrangement. For example, the current block (cur) in FIG. 4 (a) is out of the epipolar line, whereas the block (ref) indicated by the motion vector having a component in the horizontal direction is in the epipolar line in FIG. 4 (b). Because it exists in, it does not match the actual. That is, the motion vector in the vertical direction may be calculated in order to obtain a motion vector dv indicating a corresponding block ref that matches the actual one. In this case, the value of the motion vector in the vertical direction may vary for each block.

상기 수평 방향의 움직임 벡터와 상기 수직 방향의 움직임 벡터를 이용하여 다음 수학식 5과 같이 현재 블록의 시점간 움직임 벡터(dv)를 획득할 수 있다.The inter-view motion vector dv of the current block may be obtained using Equation 5 using the horizontal motion vector and the vertical motion vector.

dv(x,y) = DVx + DVydv (x, y) = DVx + DVy

이 때 상기 수평 방향의 움직임 벡터(DVy)는 카메라 정보를 이용하여 획득할 수 있다. 여기서, 카메라정보란 일련의 픽처들인 시퀀스를 생성하는 카메라에 관한 정보로서, 하나의 카메라에 의해 촬영되는 일련의 픽쳐들은 하나의 시점을 구성할 수 있다. 또는 카메라의 위치가 변경되는 경우에도 새로운 시점을 구성할 수 있다. In this case, the horizontal motion vector DVy may be obtained using camera information. Here, the camera information is information about a camera generating a sequence that is a series of pictures, and the series of pictures captured by one camera may constitute one viewpoint. Alternatively, a new viewpoint may be configured even when the position of the camera is changed.

한편, 상기 카메라 정보의 유형은, 1) 카메라 파라미터, 2) 호모지니어스 매트릭스, 3) 카메라 매트릭스, 및 4) 기본 매트릭스 등이 있을 수 있다. 이하 도 6내지 도 8에서 상세히 설명하도록 한다.Meanwhile, the types of camera information may include 1) camera parameters, 2) homogeneous matrices, 3) camera matrices, and 4) basic matrices. 6 to 8 will be described in detail below.

도 6내지 도 8은 본 발명이 적용되는 실시예로서, 카메라 정보의 유형을 설명하기 위해 나타낸 것이다.6 to 8 illustrate embodiments to which the present invention may be applied to illustrate types of camera information.

카메라 파라미터는 고유의(intrinsic) 카메라 파라미터 및 비고유의 카메라 파라미터(extrinsic) 카메라 파라미터가 있을 수 있는데, 고유의 카메라 파라미터에는 초점 거리(focal length), 가로세로비(aspect ratio), 삐뚤어진 각도(skew), 주점(principal point) 등이 있을 수 있고, 비고유의 카메라 파라미터에는 세계 좌표계에서의 카메라의 위치정보 등이 있을 수 있다. Camera parameters can include intrinsic camera parameters and non-native camera parameters, including intrinsic camera parameters, which include focal length, aspect ratio, and skew. There may be a principal point or the like, and the non-unique camera parameter may include camera position information in a world coordinate system.

호모지니어스(Homogeneous) 매트릭스는, 도 6 및 수학식 6과 같이 특정 뷰(view)(x)를 세계 좌표계의 정렬된 뷰(x')로 바꾸기 위한 것이다.The homogeneous matrix is for converting a specific view x into an ordered view x 'of the world coordinate system, as shown in Figures 6 and 6.

Figure 112007051226692-PAT00001
Figure 112007051226692-PAT00001

Figure 112007051226692-PAT00002
Figure 112007051226692-PAT00002

여기서, x'는 세계 좌표계에서의 점, x는 각 뷰의 로컬 좌표계에서의 점, H는 호모지니어스 매트릭스를 나타낸다.Where x 'is a point in the world coordinate system, x is a point in the local coordinate system of each view, and H is a homogeneous matrix.

카메라 매트릭스(Camera Matrix)는 각 뷰에서의 로컬 좌표계, 및 세계 좌표계간의 관계를 기술하는 것으로서, 이 관계는 도 7 및 수학식 7과 같이 표현될 수 있다.A camera matrix describes a relationship between a local coordinate system and a world coordinate system in each view, and this relationship may be expressed as shown in FIG. 7 and equation (7).

Figure 112007051226692-PAT00003
Figure 112007051226692-PAT00003

여기서, x는 현재 뷰의 로컬 좌표계에서의 점, X는 세계 좌표계에서의 점, P는 카메라 매트릭스를 나타낸다. 상기 카메라 매트릭스(P)는 카메라 파라미터를 이용하여 다음 수학식 8과 같이 표현될 수 있다.Where x is a point in the local coordinate system of the current view, X is a point in the world coordinate system, and P is a camera matrix. The camera matrix P may be expressed by Equation 8 using camera parameters.

Figure 112007051226692-PAT00004
Figure 112007051226692-PAT00004

여기서, A는 현재 카메라의 고유의 파라미터, R은 로테이션(rotation), t는 이동(translation)을 나타낸다. 상기 수학식 8에서 벡터 A를 자세하게 표현하면 다음 수학식 9와 같다.Where A denotes a unique parameter of the current camera, R denotes rotation, and t denotes translation. When the vector A is expressed in detail in Equation 8, Equation 9 is obtained.

Figure 112007051226692-PAT00005
Figure 112007051226692-PAT00005

여기서, r은 가로세로비(aspect ratio), s는 삐뚤어진 각도(skew), f는 초점 거리, x0, y0은 주점을 나타낸다.Here, r is an aspect ratio, s is a skew, f is a focal length, and x 0 and y 0 are principal points.

기본 매트릭스(Fundamental matrix)는 한 쌍의 시점간의 기하학적 관계를 기술하는 것으로서, 도 8 및 수학식 10과 같이 표현될 수 있다. A fundamental matrix describes a geometric relationship between a pair of viewpoints, and may be expressed as shown in FIG. 8 and Equation 10. FIG.

Figure 112007051226692-PAT00006
Figure 112007051226692-PAT00006

여기서, x' 및 x는 각 로컬 좌표계에서의 점들, F는 기본 매트릭스를 나타낸다. 그리고, 기본 매트릭스는 두 카메라의 고유의(intrinsic) 카메라 파라미터 및 비고유의(extrinsic) 카메라 파라미터를 통해 획득될 수 있다.Where x 'and x are points in each local coordinate system, and F is a base matrix. And, the base matrix can be obtained through intrinsic camera parameters and extrinsic camera parameters of both cameras.

상기와 같은 카메라 정보에 의해 상기 수직 방향의 움직임 벡터(DVy)를 획득할 수 있다. 그리고 상기 수직 방향의 움직임 벡터(DVy)를 시점 방향을 고려한 시간 직접 예측 모드에 이용할 수 있다. 이하 다양한 실시예를 들어보기로 한다.The motion vector DVy in the vertical direction may be obtained based on the camera information. The vertical motion vector DVy may be used in the direct temporal prediction mode considering the view direction. Hereinafter, various embodiments will be described.

1) 앵커 블록의 List0 레퍼런스 인덱스가 장기 참조 픽쳐를 참조하고 있는 경우를 예로 들어본다.1) For example, the List0 reference index of an anchor block refers to a long-term reference picture.

이때, 상기 앵커 블록의 움직임 벡터(mvCol)가 참조하는 List0 참조 픽쳐가 현재 블록과 다른 시점에 있는 픽쳐라면, 상기 수평 방향의 움직임 벡터(DVx)와 상기 수직 방향의 움직임 벡터(DVy)가 적용될 수 있다. 그리고, 앵커 블록의 List0 레퍼런스 인덱스가 장기 참조 픽쳐를 참조하고 있기 때문에, 상대적으로 현재 픽쳐와 앵커 픽쳐와의 시간 거리는 0 에 가깝다고 볼 수 있다. 따라서, 아래 수학식 11을 통해 mvL0와 mvL1을 구할 수 있다.In this case, when the List0 reference picture referred to by the motion vector mvCol of the anchor block is a picture that is different from the current block, the horizontal motion vector DVx and the vertical motion vector DVy may be applied. have. In addition, since the List0 reference index of the anchor block refers to the long-term reference picture, the time distance between the current picture and the anchor picture is relatively close to zero. Therefore, mvL0 and mvL1 can be obtained through Equation 11 below.

mvL0 = mvCol + DVx + DVy = mvCol''mvL0 = mvCol + DVx + DVy = mvCol ''

mvL1 = 0mvL1 = 0

그러나, 상기 앵커 블록의 움직임 벡터(mvCol)가 참조하는 List0 참조 픽쳐가 현재 블록과 동일한 시점에 있는 픽쳐라면, 상기 시점간의 움직임 벡터(DVx + DVy)가 적용되지 않아도 된다. 이러한 경우에는 아래 수학식 12을 통해 mvL0와 mvL1을 구할 수 있다.However, if the List0 reference picture referenced by the motion vector mvCol of the anchor block is at the same view as the current block, the motion vector DVx + DVy between the views may not be applied. In this case, mvL0 and mvL1 can be obtained through Equation 12 below.

mvL0 = mvColmvL0 = mvCol

mvL1 = 0mvL1 = 0

2) 앵커 블록의 List0 레퍼런스 인덱스가 장기 참조 픽쳐를 참조하고 있지 않은 경우를 예로 들어본다.2) For example, the List0 reference index of the anchor block does not refer to the long-term reference picture.

이때, 상기 앵커 블록의 움직임 벡터(mvCol)가 참조하는 List0 참조 픽쳐가 현재 블록과 다른 시점에 있는 픽쳐라면, 상기 시점간의 움직임 벡터(DVx + DVy)가 적용될 수 있다. 상기 앵커 블록의 List0 레퍼런스 인덱스가 장기 참조 픽쳐를 참조하고 있지 않기 때문에 시간 거리의 비례 관계를 이용하여 mvL0와 mvL1을 구할 수 있다. 아래 수학식 13를 이용할 수 있다.In this case, if the List0 reference picture referred to by the motion vector mvCol of the anchor block is a picture at a point in time different from the current block, the motion vector DVx + DVy between the viewpoints may be applied. Since the List0 reference index of the anchor block does not refer to the long-term reference picture, mvL0 and mvL1 can be obtained using a proportional relationship of time distances. Equation 13 below may be used.

mvL0 = (mvCol + DVx + DVy) * (tb/td) = mvCol'' * (tb/td)mvL0 = (mvCol + DVx + DVy) * (tb / td) = mvCol '' * (tb / td)

mvL1 = -(mvCol + DVx + DVy) * (td- tb) /td = mvL0 - (mvCol + DVx + DVy)mvL1 =-(mvCol + DVx + DVy) * (td- tb) / td = mvL0-(mvCol + DVx + DVy)

= mvL0 - mvCol''     = mvL0-mvCol ''

그러나, 상기 앵커 블록의 움직임 벡터(mvCol)가 참조하는 List0 참조 픽쳐가 현재 블록과 동일한 시점에 있는 픽쳐라면, 상기 시점간의 움직임 벡터(DVx + DVy)가 적용되지 않아도 된다. 이러한 경우에는 아래 수학식 14를 통해 mvL0와 mvL1을 구할 수 있다.However, if the List0 reference picture referenced by the motion vector mvCol of the anchor block is at the same view as the current block, the motion vector DVx + DVy between the views may not be applied. In this case, mvL0 and mvL1 can be obtained through Equation 14 below.

mvL0 = mvCol * (tb/td)mvL0 = mvCol * (tb / td)

mvL1 = - mvCol * (td- tb) /td = mvL0 - mvColmvL1 =-mvCol * (td- tb) / td = mvL0-mvCol

상기에서 살펴본 바와 같이 상기 앵커 블록의 움직임 벡터(mvCol)가 다른 시점에 있는 픽쳐를 참조하고 있으나, 현재 픽쳐의 참조 픽쳐 리스트에는 상기 다른 시점에 있는 픽쳐가 들어있지 않을 수 있다. 이러한 경우 상기 다른 시점에 있는 참조 블록과 대응되는 블록, 예를 들어 동일한 시간상에 존재하고 현재 픽쳐와 동일한 시점에 있는 픽쳐의 블록을 이용할 수 있다. 이 때 상기 시점간의 움직임 벡터(DVx + DVy)를 이용하여 상기 대응 블록을 획득할 수 있다. 그리고, 상기 수직 방향의 시점간 움직임 벡터(DVy) 값은 상기 카메라 정보들에 의해 획득할 수 있다.As described above, although the motion vector mvCol of the anchor block refers to a picture at another point in time, the reference picture list of the current picture may not include the picture at the other point of view. In this case, a block corresponding to the reference block at the other time point, for example, a block of a picture present at the same time and at the same time point as the current picture may be used. In this case, the corresponding block may be obtained using the motion vector DVx + DVy. The inter-view motion vector DVy value in the vertical direction may be obtained by the camera information.

또한, 본 발명이 적용되는 다른 실시예로서, 상기 도 2에서 설명한 시점간 움직임 벡터와 상기 도 5에서 설명한 수직 방향의 시점간 움직임 벡터(DVy)를 모두 이용하여 움직임 벡터를 예측할 수도 있다. 이는 상기 도 2내지 도 8에서 설명한 방식과 유사한 방식으로 적용가능하다.In another embodiment to which the present invention is applied, the motion vector may be predicted using both the inter-view motion vector described with reference to FIG. 2 and the inter-view motion vector DVy in the vertical direction described with reference to FIG. 5. This is applicable in a manner similar to that described with reference to FIGS. 2 to 8.

이상에서 설명한 바와 같이, 본 발명이 적용되는 디코딩/인코딩 장치는 DMB(Digital Multimedia Broadcasting)과 같은 멀티미디어 방송 송/수신 장치에 구비되어, 비디오 신호 및 데이터 신호 등을 복호화하는데 사용될 수 있다. 또한 상기 멀티미디어 방송 송/수신 장치는 이동통신 단말기를 포함할 수 있다.As described above, the decoding / encoding device to which the present invention is applied may be provided in a multimedia broadcasting transmission / reception device such as digital multimedia broadcasting (DMB), and may be used to decode a video signal and a data signal. In addition, the multimedia broadcasting transmission / reception apparatus may include a mobile communication terminal.

또한, 본 발명이 적용되는 디코딩/인코딩 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 본 발명에 따른 데이터 구조를 가지는 멀티미디어 데이터도 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있다. 상기 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 상기 인코딩 방법에 의해 생성된 비트스트림은 컴퓨터가 읽을 수 있는 기록 매체에 저장되거나, 유/무선 통신망을 이용해 전송될 수 있다.In addition, the decoding / encoding method to which the present invention is applied may be stored in a computer-readable recording medium that is produced as a program for execution on a computer, and multimedia data having a data structure according to the present invention may also be read by a computer. It can be stored in the recording medium. The computer readable recording medium includes all kinds of storage devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet). Include. In addition, the bitstream generated by the encoding method may be stored in a computer-readable recording medium or transmitted using a wired / wireless communication network.

도 1은 본 발명이 적용되는 비디오 신호 디코딩 장치의 개략적인 블록도를 나타낸다.1 is a schematic block diagram of a video signal decoding apparatus to which the present invention is applied.

도 2는 본 발명이 적용되는 실시예로서 시점 방향을 고려한 움직임 벡터 예측 방법을 설명하기 위해 나타낸 것이다.2 is a view illustrating a motion vector prediction method in consideration of a view direction as an embodiment to which the present invention is applied.

도 3은 본 발명이 적용되는 다른 실시예로서, 시점 방향을 고려하여 현재 블록의 움직임 벡터를 예측하는 방법을 설명하기 위해 나타낸 것이다.3 is a diagram for describing a method of predicting a motion vector of a current block in consideration of a view direction as another embodiment to which the present invention is applied.

도 4 및 도 5는 본 발명이 적용되는 실시예로서, 카메라 정보를 이용하여 현재 블록의 움직임 벡터를 예측하는 방법을 설명하기 위해 나타낸 것이다.4 and 5 illustrate an embodiment to which the present invention is applied to explain a method of predicting a motion vector of a current block using camera information.

도 6내지 도 8은 본 발명이 적용되는 실시예로서, 카메라 정보의 유형을 설명하기 위해 나타낸 것이다.6 to 8 illustrate embodiments to which the present invention may be applied to illustrate types of camera information.

Claims (12)

쌍예측 이미지 블록에 대하여 동일 위치에 있는 이미지 블록의 list 0 움직임 벡터와 list 1 움직임 벡터 중 하나를 상기 쌍예측 이미지 블록의 움직임 벡터들을 유도하기 위한 움직임 벡터로서 결정하는 단계를 포함하되,Determining one of a list 0 motion vector and a list 1 motion vector of the image block at the same position with respect to the bipredicted image block as a motion vector for deriving the motion vectors of the bipredicted image block; 상기 list 0 움직임 벡터 또는 list 1 움직임 벡터가 가리키는 픽쳐는 상기 쌍예측 이미지 블록과 다른 시점에 있는 픽쳐를 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.And the picture indicated by the list 0 motion vector or the list 1 motion vector includes a picture at a different point in time than the bi-predicted image block. 제 1항에 있어서, 상기 비디오 신호 처리 방법은,The method of claim 1, wherein the video signal processing method comprises: 상기 결정된 움직임 벡터로부터 상기 쌍예측 이미지 블록의 list 0 움직임 벡터와 list 1 움직임 벡터를 유도하는 단계Deriving a list 0 motion vector and a list 1 motion vector of the bi-prediction image block from the determined motion vector 를 더 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.The video signal processing method further comprising. 제 2 항에 있어서,The method of claim 2, 상기 쌍예측 이미지 블록의 list 0 움직임 벡터와 list 1 움직임 벡터는 시점 간의 변이 벡터를 이용하여 유도되는 것을 특징으로 하는 비디오 신호 처리 방법.And a list 0 motion vector and a list 1 motion vector of the bi-prediction image block are derived using a disparity vector between viewpoints. 제 1항에 있어서, 상기 비디오 신호 처리 방법은,The method of claim 1, wherein the video signal processing method comprises: 상기 결정된 움직임 벡터가 다른 시점에 있는 픽쳐를 가리키는 경우, 상기 쌍예측 이미지 블록의 시점과 상기 다른 시점 사이의 변이 차이를 나타내는 제 1 움직임 벡터를 획득하는 단계When the determined motion vector indicates a picture at a different viewpoint, acquiring a first motion vector indicating a difference between the viewpoints of the bi-predictive image block and the other viewpoint; 를 더 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.The video signal processing method further comprising. 제 4항에 있어서, 상기 비디오 신호 처리 방법은,The method of claim 4, wherein the video signal processing method comprises: 상기 결정된 움직임 벡터와 상기 제 1 움직임 벡터로부터 상기 쌍예측 이미지 블록의 list 0 움직임 벡터와 list 1 움직임 벡터를 유도하는 단계Deriving a list 0 motion vector and a list 1 motion vector of the bi-prediction image block from the determined motion vector and the first motion vector. 를 더 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.The video signal processing method further comprising. 제 4항에 있어서,The method of claim 4, wherein 상기 제 1 움직임 벡터를 이용할 수 없는 경우, 상기 쌍예측 이미지 블록의 list 0 움직임 벡터와 list 1 움직임 벡터는 상기 결정된 움직임 벡터로부터 유도되는 것을 특징으로 하는 비디오 신호 처리 방법.And if the first motion vector is not available, list 0 motion vector and list 1 motion vector of the bi-prediction image block are derived from the determined motion vector. 제 4항에 있어서,The method of claim 4, wherein 상기 결정된 움직임 벡터가 다른 시점에 있는 픽쳐를 가리키는 경우, 카메라 배열에 따른 위치 차이를 나타내는 제 2 움직임 벡터를 획득하는 단계Acquiring a second motion vector indicating a position difference according to a camera arrangement when the determined motion vector points to a picture at a different point in time 를 더 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.The video signal processing method further comprising. 제 7항에 있어서,The method of claim 7, wherein 상기 제 2 움직임 벡터는 카메라 정보에 의해 유도되는 것을 특징으로 하는 비디오 신호 처리 방법.And the second motion vector is derived by camera information. 제 8항에 있어서,The method of claim 8, 상기 카메라 정보는, 카메라 파라미터, 호모지니어스 매트릭스 성분, 카메라 매트릭스 성분, 및 기본 매트릭스 성분 중 하나 이상을 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.And the camera information comprises at least one of a camera parameter, a homogeneous matrix component, a camera matrix component, and a base matrix component. 제 1 항에 있어서,The method of claim 1, 상기 동일 위치에 있는 이미지 블록은 list 1 레퍼런스 픽쳐와 관련되는 것을 특징으로 하는 비디오 신호 처리 방법.And said at least one image block is associated with a list 1 reference picture. 제 1 항에 있어서, 상기 비디오 신호 처리 방법은,The method of claim 1, wherein the video signal processing method comprises: 상기 결정된 움직임 벡터가 가리키는 레퍼런스 픽쳐를 list 0 레퍼런스 픽쳐로서 결정하는 단계Determining a reference picture indicated by the determined motion vector as a list 0 reference picture 를 더 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.The video signal processing method further comprising. 제 1 항에 있어서, 상기 비디오 신호 처리 방법은,The method of claim 1, wherein the video signal processing method comprises: 상기 결정된 움직임 벡터를 포함하는 상기 동일 위치에 있는 이미지 블록의 레퍼런스 정보로부터 list 0 레퍼런스 픽쳐를 결정하는 단계Determining a list 0 reference picture from reference information of the co-located image block including the determined motion vector 를 더 포함하는 것을 특징으로 하는 비디오 신호 처리 방법.The video signal processing method further comprising.
KR1020070070675A 2006-07-14 2007-07-13 A method and apparatus for processing a video signal KR20080007177A (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US83059906P 2006-07-14 2006-07-14
US60/830,599 2006-07-14
US83791306A 2006-08-16 2006-08-16
US60/837,913 2006-08-16

Publications (1)

Publication Number Publication Date
KR20080007177A true KR20080007177A (en) 2008-01-17

Family

ID=39220660

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070070675A KR20080007177A (en) 2006-07-14 2007-07-13 A method and apparatus for processing a video signal

Country Status (1)

Country Link
KR (1) KR20080007177A (en)

Similar Documents

Publication Publication Date Title
US11240478B2 (en) Efficient multi-view coding using depth-map estimate for a dependent view
JP7248741B2 (en) Efficient Multiview Coding with Depth Map Estimation and Update
KR101276720B1 (en) Method for predicting disparity vector using camera parameter, apparatus for encoding and decoding muti-view image using method thereof, and a recording medium having a program to implement thereof
US20210377559A1 (en) Selective application of decoder side refining tools
JP5021739B2 (en) Signal processing method and apparatus
JP5156088B2 (en) Video signal decoding / encoding method and apparatus
CN112740695A (en) Method and apparatus for processing video signal using inter prediction
KR101227601B1 (en) Method for interpolating disparity vector and method and apparatus for encoding and decoding multi-view video
KR20150109282A (en) A method and an apparatus for processing a multi-view video signal
EP3737091A1 (en) Method for processing image on basis of inter-prediction mode and device therefor
JP2010525724A (en) Method and apparatus for decoding / encoding a video signal
EP3011746A1 (en) More accurate advanced residual prediction (arp) for texture coding
WO2020003273A1 (en) Extended merge mode
CN112385213B (en) Method for processing image based on inter prediction mode and apparatus for the same
CN111052739A (en) Method and apparatus for image processing based on inter prediction mode
KR20150043319A (en) Method and device for processing video signal
KR20120095611A (en) Method and apparatus for encoding/decoding multi view video
US11595639B2 (en) Method and apparatus for processing video signals using affine prediction
EP1929783A1 (en) Method of estimating disparity vector using camera parameters, apparatus for encoding and decoding multi-view picture using the disparity vectors estimation method, and computer-redadable recording medium storing a program for executing the method
Zhang et al. Inter-view motion prediction in 3D-HEVC
WO2020182147A1 (en) Improvement on motion candidate list construction
KR20080006495A (en) A method and apparatus for decoding a video signal
KR20080060188A (en) A method and apparatus for decoding a video signal
KR20210158399A (en) Inter prediction-based video coding method and apparatus
KR20080007177A (en) A method and apparatus for processing a video signal

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination